nodejs 生成和导出 word的实例代码


Posted in NodeJs onJuly 31, 2018

前段时间由于项目需求,得做excel和word的导出功能,excel的导出百度一下一大把,小伙伴们都写的好详细,基本打来改改就可以用,可导出word的功能,百度了貌似都找不到可用资料,哎,费解呀。后来找同事,同事们也没整过,看来还得自己上呀。。。

第一次发现原来百度Google这强大,同事推荐的 http://www.baigoogledu.com/

百度Google一起摆 nodejs word  找到https://github.com/Ziv-Barber/officegen   看到这里您老是不就瞬间明白了,源码介绍好详细,认真看

npm install officegen  安装office插件,支持导出word、excel、ppt 

下边附上我的word导出代码,代码有点糙,您老将就看哈

var officegen = require('officegen');
 var fs = require('fs');
 var path = require('path');
 var docx = officegen ( 'docx' );
 var async = require('async');
 /**
 * 导出word
 */
 exports.exportWord = function(req, res) {
  console.log('exportWord-------------');
  docx.on ( 'finalize', function ( written ) {
     console.log ( 'Finish to create Word file.\nTotal bytes created: ' + written + '\n' );
    });
  docx.on ( 'error', function ( err ) {
     console.log ( err );
    });
  var pObj = docx.createP ( { align: 'center' } );// 创建行 设置居中
 pObj.addText ( '血液透析(滤过)治疗知情同意书', { bold: true,font_face: 'Arial', font_size: 18 });// 添加文字 设置字体样式 加粗 大小
 var pObj = docx.createP ();
  pObj.addText ( '姓名' );
  pObj.addText ( ' with color', { color: '000088' } );// 设置字体颜色
 pObj.addText ( '性别' );
  pObj.addText ( '', { color: '00ffff', back: '000088' } );
  pObj.addText ( '年龄' );
  pObj.addText ( '岁', { color: '000088' } );
  var pObj = docx.createP ();
  pObj.addText ( '门诊(住院)号' );
  pObj.addText ( ' with color', { color: '000088' } );
  pObj.addText ( '诊断' );
  pObj.addText ( '', { color: '000088'} );
  var pObj = docx.createP ();
  pObj.addText ( '一、血液透析(滤过)能有效清除身体内过多的水分合霉素,是治疗急性和慢性肾衰竭等疾病的有效方法。' );
  var pObj = docx.createP ();
  pObj.addText ( '二、血液透析(滤过)治疗时,首先需要将患者血液引到体外,然后通过透析或滤过等方法清除水分和霉素,经受理后的血液再回到患者体外。' );
  var pObj = docx.createP ();
  pObj.addText ( '三、为了有效引出血液,治疗前需要建立血管通路(动静脉内痿或深静脉插管)。' );
  var pObj = docx.createP ();
  pObj.addText ( '四、为防止血液在体外管路和透析器发生凝固,一般需要在透析前和透析过程中注射肝素等抗凝药物。' );
  var pObj = docx.createP ();
  pObj.addText ( '五、血透过程中和治疗期间存在下列医疗风险,可能造成严重后果,甚至危及生命:' );
  var pObj = docx.createP ();
  pObj.addText ( '1.低血压,心力衰竭,心肌梗塞,心律失常,脑血管意外;' );
  var pObj = docx.createP ();
  pObj.addText ( '2.空气球栓塞;' );
  var pObj = docx.createP ();
  pObj.addText ( '3.过敏反应;' );
  var out = fs.createWriteStream ( 'out.docx' );// 文件写入
 out.on ( 'error', function ( err ) {
   console.log ( err );
  });
  var result = docx.generate (out);// 服务端生成word
  res.writeHead ( 200, {
// 注意这里的type设置,导出不同文件type值不同application/vnd.openxmlformats-officedocument.presentationml.presentation
   "Content-Type": "application/vnd.openxmlformats-officedocument.wordprocessingml.document", 
 'Content-disposition': 'attachment; filename=out.docx'
 });
  docx.generate (res);// 客户端导出word
 }

总结

以上所述是小编给大家介绍的nodejs 生成和导出 word的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

NodeJs 相关文章推荐
PHPStorm 2020.1 调试 Nodejs的多种方法详解
Sep 17 NodeJs
用nodejs实现PHP的print_r函数代码
Mar 14 NodeJs
nodejs 提示‘xxx’ 不是内部或外部命令解决方法
Nov 20 NodeJs
nodejs中的fiber(纤程)库详解
Mar 24 NodeJs
nodejs基础知识
Feb 03 NodeJs
NodeJS、NPM安装配置步骤(windows版本) 以及环境变量详解
May 13 NodeJs
深入浅析Nodejs的Http模块
Jun 20 NodeJs
nodeJS服务器的创建和重新启动的实现方法
May 12 NodeJs
NodeJs搭建本地服务器之使用手机访问的实例讲解
May 12 NodeJs
监控Nodejs的性能实例代码
Jul 02 NodeJs
nodejs实现百度舆情接口应用示例
Feb 07 NodeJs
nodejs使用Sequelize框架操作数据库的实现
Oct 21 NodeJs
nodejs(officegen)+vue(axios)在客户端导出word文档的方法
Jul 31 #NodeJs
nodejs 十六进制字符串型数据与btye型数据相互转换
Jul 30 #NodeJs
NodeJS 中Stream 的基本使用
Jul 30 #NodeJs
Nodejs实现爬虫抓取数据实例解析
Jul 05 #NodeJs
nodejs的路径问题的解决
Jun 30 #NodeJs
nodejs用gulp管理前端文件方法
Jun 24 #NodeJs
Nodejs异步回调之异常处理实例分析
Jun 22 #NodeJs
You might like
PHP统计目录下的文件总数及代码行数(去除注释及空行)
2011/01/17 PHP
PHP通过session id 实现session共享和登录验证的代码
2012/06/03 PHP
PHP获取MSN好友列表类的实现代码
2013/06/23 PHP
ThinkPHP CURD方法之order方法详解
2014/06/18 PHP
PHP基于DOM创建xml文档的方法示例
2017/02/08 PHP
php实现的PDO异常处理操作分析
2018/12/27 PHP
laravel 框架结合关联查询 when()用法分析
2019/11/22 PHP
PHP变量的作用范围实例讲解
2020/12/22 PHP
表单填写时用回车代替TAB的实现方法
2007/10/09 Javascript
判断多个元素(RADIO,CHECKBOX等)是否被选择的原理说明
2009/02/18 Javascript
JQuery 小练习(实例代码)
2009/08/07 Javascript
javascript基础第一章 JavaScript与用户端
2010/07/22 Javascript
JQuery 弹出框定位实现方法
2010/12/02 Javascript
Javascript window对象详解
2014/11/12 Javascript
jQuery滚动加载图片实现原理
2015/12/14 Javascript
JS从数组中随机取出几个数组元素的方法
2016/08/02 Javascript
详解webpack运行Babel教程
2018/06/13 Javascript
vue中vee validate表单校验的几种基本使用
2018/06/25 Javascript
微信小程序使用for循环动态渲染页面操作示例
2018/12/25 Javascript
vue中使用mxgraph的方法实例代码详解
2019/05/17 Javascript
vue中template的三种写法示例
2020/10/21 Javascript
[42:24]完美世界DOTA2联赛PWL S2 LBZS vs FTD.C 第三场 11.27
2020/12/01 DOTA
Python3.x版本中新的字符串格式化方法
2015/04/24 Python
python 安装virtualenv和virtualenvwrapper的方法
2017/01/13 Python
python 读取文本文件的行数据,文件.splitlines()的方法
2018/07/12 Python
python 常见字符串与函数的用法详解
2018/11/23 Python
python基于plotly实现画饼状图代码实例
2019/12/16 Python
解决在keras中使用model.save()函数保存模型失败的问题
2020/05/21 Python
python输出结果刷新及进度条的实现操作
2020/07/13 Python
Pythonic版二分查找实现过程原理解析
2020/08/11 Python
小学生期末评语
2014/04/21 职场文书
关于颐和园的导游词
2015/01/30 职场文书
三行辞职书范文
2015/02/26 职场文书
廉洁自律承诺书范文
2015/04/28 职场文书
2015年度酒店客房部工作总结
2015/05/25 职场文书
SQL语句中EXISTS的详细用法大全
2022/06/25 MySQL