java实现html转pdf-基于PhantomJS

一、前言

PhantomJS是一个无界面浏览器,可以在服务端通过命令行的方式使用。旨在用于页面自动化(page automation,网络监控(network monitoring, 页面截屏(screen capture,与无界面测试(headless testing)。

本文将介绍使用PhantomJS官方实现将网络页面与本地html文件渲染为pdf文件。

二、安装

去官网(http://phantomjs.org/download.html)下载合适的软件包——本文使用windows的软件包为例子。

下载软件包后,解压到指定位置(本文解压并改名为phantomjs——D:\dev\phantomjs)。

三、使用

PhantomJS官方提供很多优秀的例子(http://phantomjs.org/examples/),本文就是直接使用了其中一个例子(rasterize.js)。

Rasterize的使用语法如下:

{$path}\phantomjs.exe {$path}\rasterize.js {$webpage} {$pdffile}

a) 把网络页面渲染为pdf

D:\dev\phantomjs\bin\phantomjs.exe D:\dev\phantomjs\examples\rasterize.js http://www.lidetao.com D:\dev\phantomjs\file\ldt.pdf

b) 把本地页面渲染为pdf

D:\dev\phantomjs\bin\phantomjs.exe D:\dev\phantomjs\examples\rasterize.js ./file/index.html D:\dev\phantomjs\file\index.pdf

© 2017, 李德涛博客. 版权所有.

发表评论

电子邮件地址不会被公开。 必填项已用*标注