zoukankan      html  css  js  c++  java
  • [转]nodejs导出word

    转载自: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.
    Total bytes created: ' + written + '
    ' );
                });
    
    
        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
    
    
    
    
    // }
    
    
  • 相关阅读:
    HDU2586 How far away?(tarjan的LCA)
    You Raise Me Up
    POJ2891 Strange Way to Express Integers(中国剩余定理)
    POJ2142 The Balance(扩展欧几里得)
    HDU 1166模仿大牛写的线段树
    NetWord Dinic
    HDU 1754 线段树裸题
    hdu1394 Minimum Inversion Number
    hdu2795 Billboard
    【完全版】线段树
  • 原文地址:https://www.cnblogs.com/zifeiy/p/10982882.html
Copyright © 2011-2022 走看看