Java教程

Java HTML转PDF 实战解决方案

本文主要是介绍Java HTML转PDF 实战解决方案,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

HTML转PDF 实战解决方案

  • HTML转PDF 实战解决方案
    • iText
    • wkhtmltopdf
    • Chromium
    • CEF/JCEF

HTML转PDF 实战解决方案

首先排除收费的,然后能支持高度自定义。主要需求就是在电商中订单面单打印插件中支持上打印HTML,而本地打印机是不能直接打印HTML的,我在网上找了很多解决方案,列举如下:

iText

iText是操作PDF常用的工具,这个自定义的话需要自己设计freeMark文档,我们后端在处理PDF时有用到,这个也有好久没维护了,对样式支持不是太友好

wkhtmltopdf

wkhtmltopdf是我通过搜索出来大多数推荐的解决方案,效率比较好,但成出来不知道是因为样式缺少还是没有字体,导致出来的有一部分成像出来排版错乱,最终还是放弃了它

Chromium

Chromium 的exe也是支持静默打印成pdf的,但是不支持自定义,成像效果是非常好的,为啥要说它呢,因为它使我产生了希望,我在GitHub上看到了一个go写的基于Chromium内核的HTML转PDF工具,既然他们能实现,那我也能实现吧,反复查看Chromium 开源API。终究还是没试出来

CEF/JCEF

CEF是Chromium 内核源码,可以嵌入到一些应用程序中,但是我是用在Java上,所以找到了JCEF,这相当于是应用程序内嵌一个浏览器,支持HTML转PDF高度自定义化,优点就是完美还原了HTML,缺点就是效率较慢,使用内存较大。有较好的预算可以采用这个方案

遇到的问题就是JCEF缺少文档,然后就是怎么不将网页显示出来转换成PDF

我目前是采用了wkhtmltopdf外加JECF这两个一起进行的,但是产品说把平台HTML面单接口全改成PDF的,呜呜呜呜

这篇关于Java HTML转PDF 实战解决方案的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!