zoukankan      html  css  js  c++  java
  • Nodejs 中将html转换成pdf文件

    Nodejs 中将html转换成pdf文件,Nodejs Convert html into pdf

    1. 下载phantomjs.exe,将该文件放在根目录

    2. 编写pdf.js文件(在github上下载phantomjs相关的测试文件,仿照rasterize.js文件编写pdf.js文件)

    3. Nodejs调用phantomjs,将html页面转换成pdf文件

    // 改变存放html和pdf的路径

    app.get('/pdf5',function(request,response){
    
       var http = require('http');
    
       var sys = require('sys');
    
       var exec = require('child_process').exec;
    
       var util = require('util');
    
       var fs = require('fs');
    
       var innertTextForBody="<table style=' border: 1px dotted  green;'><tr><td>Name</td><td>Age</td><td>Agent</td><td>Address</td><td>FootMark</td></tr></table>";
    
       var dummyContent = '<!doctype  html><html><head><title>Test</title><meta  charset="utf-8"></head><body><p  style="border: 1px dotted #adff2f">Hello everyone,Node you can inspire weg page go forward!</p>'+innertTextForBody+'</body></html>';
    
       var date=new Date();
    
       var  fileName=date.getYear().toString()+date.getMonth().toString()+date.getDay().toString()+date.getHours().toString()+date.getMinutes().toString()+date.getSeconds().toString();
    
       console.log(fileName);
    
       // var htmlFileName ="wwwroot/public/ConverPdf/page.html",  pdfFileName ="wwwroot/public/ConverPdf/page.pdf";
    
       var htmlFileName  ="wwwroot/public/ConverPdf/"+fileName+".html",  pdfFileName ="wwwroot/public/ConverPdf/"+fileName+".pdf";
    
       // Save to HTML file(this html url you can specify web page)
    
       fs.writeFile(htmlFileName, dummyContent, function(err) {
    
        if(err) { throw err; }
    
        util.log("temporatry html file have  generator");
    
       });
    
       // var child = exec("phantomjs.exe"+"  "+"pdf.js"+" "+ htmlFileName + " " +  pdfFileName, function(err, stdout, stderr) {
    
       var child = exec("phantomjs.exe"+"  "+"pdf.js"+" "+ htmlFileName + " " +  pdfFileName, function(err, stdout, stderr) {
    
        if(err) { throw err; }
    
        else
    
        {
    
          console.log('pdf file saved to');
    
          util.log(stderr);
    
          fs.unlink(htmlFileName,function(err){
    
            if (err) throw err;
    
            console.log('successfully deleted  '+htmlFileName);
    
          });
    
        }
    
       });
    
       response.writeHead(200, {'Content-Type' : 'text/html'});
    
       response.end('Rendered to ' + htmlFileName + ' and ' + pdfFileName +  '
    ');
    
    });
  • 相关阅读:
    机器学习进度09(逻辑回归)
    机器学习进度08(过欠拟合、岭回归)
    机器学习进度07(线性模型、损失函数、优化方法)
    Python绘制心形图(动态)
    Python发送QQ消息
    Python免费发送手机短信,推送消息
    Anaconda的安装与环境配置以及jupyter的使用
    第一章 概念部分
    k8s简介
    安装k8s遇到的问题
  • 原文地址:https://www.cnblogs.com/guide2it/p/3503615.html
Copyright © 2011-2022 走看看