转载自:https://blog.51cto.com/13803916/2133602

需要先下载依赖:

npm install officegen

亲测可用:

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 ( '我很帅的哈哈哈哈!我很帅!' , { font_face: 'Symbol', font_size: 20 } );     var out = fs.createWriteStream ( 'out.docx' );// 文件写入
    out.on ( 'error', function ( err ) {
        console.log ( err );
    });     var result = docx.generate (out);// 服务端生成word // }

[转]nodejs导出word的更多相关文章

  1. NodeJs之word文件生成与解析

    NodeJs之word文件生成与解析 一,介绍与需求 1.1,介绍 1,officegen模块可以为Microsoft Office 2007及更高版本生成Office Open XML文件.此模块不 ...

  2. java 导出word 并下载

    记录一下导出操作 源码: /************ * 导出word 并下载 * @param id 房号记录编号 * ***********************/ @RequestMappin ...

  3. Asp.net通过模板(.dot/Html)导出Word,同时导出图片

    一.Office组件导出Word(服务器配置麻烦) 需要引用Office的DLL,在下文的附件中,不同的Offic版本用的不一样,虽然高级版本可以兼容低级的,不过,还是统一版本最好 贴上核心代码(转载 ...

  4. 导出Excel And 导出word

      <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default6.aspx. ...

  5. 使用NPOI2.1.3.1版本导出word附带表格和图片

    原文:http://www.cnblogs.com/afutureBoss/p/4074397.html?utm_source=tuicool&utm_medium=referral 最近项目 ...

  6. Java使用velocity导出word

    效果展示: 使用word编辑好模板

  7. 【吉光片羽】MVC 导出Word的两种方式

    1.直接将Html转成Word.MVC自带FileResult很好用.Html中我们也可以嵌入自己的样式. html: <div id="target"> <st ...

  8. java导出word的6种方式(复制来的文章)

    来自: http://www.cnblogs.com/lcngu/p/5247179.html 最近做的项目,需要将一些信息导出到word中.在网上找了好多解决方案,现在将这几天的总结分享一下. 目前 ...

  9. 【MVC】 非常简单的页面导出 WORD, EXCEL方法

    [MVC] 页面导出 WORD, EXCEL 前端 js function output() { var para = new Object(); para.html = getHtml(" ...

随机推荐

  1. SQL进阶系列之12SQL编程方法

    写在前面 KISS -- keep it sweet and simple 表的设计 注意命名的意义 英文字母 + 阿拉伯数字 + 下划线"_" 属性和列 编程的方针 写注释 注意 ...

  2. 划分土地(how many pieces of land)

    题目描述: 给一个椭圆,上面有n个点,两两连接这n个点,得到的线段能把椭圆分为几个区域? 思路: 首先想想,n个点在椭圆边缘,每两个点两两连接有\(C^2_n\)条线段,这些线段交于很多点,求这些线段 ...

  3. mybatis多数据库切换,(动态数据源)。

    项目中将一个库的某些标的某些数据保存到另一个库. 使用spring的aop编程动态切换数据源,代码如下,以备下次用到! 1.先将两个数据库连接,创建两个数据源,交于spring管理! <bean ...

  4. C# 退出应用程序的几种方法

    Application.Exit();//好像只在主线程可以起作用,而且当有线程,或是阻塞方法的情况下,很容易失灵 this.Close();//只是关闭当前窗体. Application.ExitT ...

  5. 日期对象|Date构造函数|

    var date = new Date(); console.log(date); //Date {Wed Dec 10 2014 15:59:24 GMT+0800} date.getDay() d ...

  6. mybatis的注意事项一

    在UserMapper.xml文件中写resultType="cn.smbms.dao.pojo.User"返回类型的全路径是不是很长,而且也比较不美观:不便于后期项目的维护. 解 ...

  7. 微信硬件平台(十) 1 ESP8266通过mqtt交互消息

    //----------------------------------------------------------------------------------------// //----- ...

  8. pkgconfig

    # tree hiredis/ hiredis/└── usr └── local ├── include │   └── hiredis │   ├── adapters │   │   ├── a ...

  9. WinDbg常用命令系列---显示当前异常处理程序链!exchain

    !exchain 这个!exchain扩展命令显示当前异常处理程序链. !exchain [Options] 参数: Options下列值之一: /c  如果检测到异常,则显示与调试C++ try/c ...

  10. mov offset和lea的区别

    mov offset和lea的区别  原文地址:https://www.cnblogs.com/fanzi2009/archive/2011/11/29/2267725.html 全局变量取地址用mo ...