使用wkhtmltopdf在nodejs中将HTML转换为PDF

4

这里有一件事情。我有一个包含内容的html页面。我想部署一个按钮,以便使用它可以将该页面的内容制作成pdf。我正在使用nodejs,并希望使用wkhtmltopdf制作pdf。我是web开发中的新手,因此示例代码或演示将是很大的帮助!

1个回答

17
您可以使用wkhtmltopdf模块将HTML文件或字符串转换为PDF。使用whtmltopdf函数调用URL或内联HTML字符串,它会返回一个流,您可以从中读取或将其管道传输到任何地方(例如文件或HTTP响应)。
以下是在Ubuntu 13.10 Desktop(64位)上的逐步指南:
1.在系统上安装wkhtmltopdf命令行工具:
$ sudo apt-get install wkhtmltopdf

2.创建项目目录html2pdf并安装wkhtmltopdf模块:

$ mkdir html2pdf && cd html2pdf
$ npm install wkhtmltopdf

3.编辑 app.js 文件并输入以下代码:

var wkhtmltopdf = require('wkhtmltopdf');
wkhtmltopdf('<h1>Test</h1><p>Hello world</p>', {output: 'out.pdf'});

运行该应用程序,将在html2pdf目录中创建一个名为out.pdf的PDF文件。

$ node app.js

=============================================================================

对于Windows操作系统:

1.下载wkhtmltopdf命令行工具。注意:有两个版本的wkhtmltopdf.exe,一个是32位Windows版本,另一个是64位Windows版本。

2.运行下载的exe文件并将wkhtmltopdf安装到指定目录,例如c:\wkhtmltopdf

3.创建项目目录html2pdf并安装wkhtmltopdf模块:

C:\> md html2pdf
C:\> cd html2pdf
C:\html2pdf> npm install wkhtmltopdf

4.编辑app.js文件,输入以下代码:

var wkhtmltopdf = require('wkhtmltopdf');
wkhtmltopdf.command = 'c:/wkhtmltopdf/bin/wkhtmltopdf.exe';
wkhtmltopdf('<h1>Test</h1><p>Hello world</p>', {output: 'out.pdf'});

5. 运行应用程序后,在 html2pdf 目录下将创建一个名为 out.pdf 的 PDF 文件。

C:\html2pdf> node app.js

wkhtmltopdf.command = 'c:/wkhtmltopdf/bin/wkhtmltopdf.exe'; 这行代码中出现了 SyntaxError: Unexpected identifier 的错误。 - user3265710
你是否已经将'wkhtmltopdf.exe'安装到c:\wkhtmltopdf目录下? - bnuhero
不,实际上我安装在程序文件中,同样我修改了路径。 - user3265710
如何在Windows解决方案中为wkhtmltopdf添加选项? - BelgoCanadian

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接