位置: 编程技术 - 正文

Nodejs中使用phantom将html转为pdf或图片格式的方法(nodejs使用视频教程)

编辑:rootadmin

推荐整理分享Nodejs中使用phantom将html转为pdf或图片格式的方法(nodejs使用视频教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:nodejs -v,nodejs用法,nodejs示例,nodejs使用视频教程,nodejs typeorm,nodejs+ts,nodejs用法,nodejs用法,内容如对您有帮助,希望把文章链接给更多的朋友!

最近在项目中遇到需要把html页面转换为pdf的需求,并且转换成的pdf文件要保留原有html的样式和图片。也就是说,html页面的图片、表格、样式等都需要完整的保存下来。

最初找到三种方法来实现这个需求,这三种方法都只是粗浅的看了使用方法,从而找出适合这个需求的方案:

html-pdf 模块wkhtmltopdf 工具phantom 模块最终使用了phantom模块,也达到了预期效果。现在简单的记录三种方式的使用方法,以及三者之间主要的不同之处。

1.html-pdf

github: install -g html-pdf

使用命令行:

html-pdf /test/index.html index.pdf

这样便可以把index.html页面转换为对应的index.pdf文件。

使用代码:

在测试过程中发现,生成的pdf文件中并没有支持样式渲染和图片加载,不能支持通过url直接加载html;但是在分页的支持上很好。

结果如下:

2、wkhtmltopdf

github: 但是安装上要麻烦得多。具体安装步骤参考这里

安装完毕之后,使用命令行:

wkhtmltopdf github.pdf

即可生成对应的PDF文件。

代码使用:

Nodejs中使用phantom将html转为pdf或图片格式的方法(nodejs使用视频教程)

除了可以通过URL生成之外,还能通过HTML文件内容生成,就像HTML-PDF一样,只要有HTML格式的字符串就可以生成相应的PDF。

结果如下:

3、phantom 模块

github: API,nodejs就相当于对phantomjs的模块化封装,使得它能够在nodejs中使用。

模块安装:

node版本6.X以上的:

npm install phantom ?save

node版本5.X的:

npm install phantom@3 ?save

node版本4.X及以下的:

npm install phantom@2 ?save

以下的例子都是基于node 4.x

代码使用:

代码中,phantom能够通过URL转换为相应的PDF,而且能够通过 page.property('viewportSize',{width:width,height:height}) 来设置生成的PDF的宽度和高度。

此例phantom中并没有分页,它是以整个浏览器截图的形式,获取全文,转化为PDF格式。

选择phantom的主要原因就是便于设置PDF的宽度,更能兼容HTML的排版。

结果如下:

Node.js+jade抓取博客所有文章生成静态html文件的实例 这篇文章,我们就把上文中采集到的所有文章列表的信息整理一下,开始采集文章并且生成静态html文件了.先看下我的采集效果,我的博客目前篇文章

在 Node.js 中使用原生 ES 模块方法解析 从版本8.5.0开始,Node.js开始支持原生ES模块,可以通过命令行选项打开该功能。新功能很大程度上得归功于BradleyFarias。1.演示这个示例的代码目录结构如

深入理解Node.js中通用基础设计模式 谈到设计模式,你可能会想到singletons,observers(观察者)或factories(工厂方法)。本文不并专门探讨他们。只是探讨Node.JS一些基础模式的实现,像依赖

本文链接地址:https://www.jiuchutong.com/biancheng/379516.html 转载请保留说明!

上一篇:Node.js中Bootstrap-table的两种分页的实现方法

下一篇:Node.js+jade抓取博客所有文章生成静态html文件的实例(nodejs抓取网页内容)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络