企业 Web 项目开发中经常会有生产 PDF 格式文档的需求,例如 PDF 账单下载,月末生成各种统计报表等等。我们要帮助企业实现自动化,也就是说无需人工干预,程序能够按需从 DB 中拿数据自主生成。

项目使用 PHP 开发,于是调研了一下 PHP 的 PDF 类库,有 dompdf,TCPDF 之流,总的来说,各个项目主页上自夸的成分居多,基本思想都是类似的,即先用 HTML 写一个模板,每次往模板里填上数据,就可以转成

PDF 输出。但真正用起来就会发现各种毛病各种坑爹,部分 CSS 属性不支持啦,中文乱码啦,诸如此类。最终让我们抛弃 dompdf 的貌似是分页的一个大坑,据说一个表格

转换一下思路,其实我们只是要把 HTML 转成 PDF 而已,并不是必须要使用 PHP 这种低效的语言来做它并不擅长的事情。 Linux 下有没有二进制程序可以做这项工作呢?大杀气登场,撒花欢迎~

一、wkhtmltopdf:利用 webkit 内核将 HTML 转为 PDF

webkit 是一个高效、开源的浏览器内核,包括 Chrome 和 Safari 在内的(当然也包括国内那些极速啥的)浏览器都使用了这个内核。Chrome 打印当前网页的功能,其中有一个选项就是直接“保存为 PDF”。

wkhtmltopdf 就是这样一个工具,使用 webkit 内核的 PDF 渲染引擎来将 HTML 页面转换为 PDF。高保真,质量很不错,server 上安装相关中文字体即可支持中文文档。更重要的是,使用非常简单。

//将网页内容转换为 PDF

exec("wkhtml遇新是直朋能到分览支体调topdf http://www.google.com google.pdf");

//将本地 HTML 文件转为 PDF

exec("wkhtml遇新是直朋能到分览支体调topdf my.html my.pdf");

?>

当然它本身提供了一些 PHP 集成的方法,但我还是觉得直接用 exec 调用外部程序更方便一些。

HTML 源文件和生成的 PDF 文件对比效果图——

关于中文渲染的问题,只要在服务器上安装相应字体即可。如果是 CentOS 系统,一个命令就能搞定:

$yum install fonts-chinese.noarch

另外注意在 HTML 文档中也要指定字符集

———- 我是猥琐的分割线,割割更健康 ———-

二、pdf2htmlEX:将 PDF 转为 HTML 网页

反过来,可否将 PDF 转化为 HTML 网页呢?(这样蛋疼的需求,我等是无法预料的……)

pdf2htmlEX 的作者是一名中国人,他实现将了 PDF 转换为 HTML,主要针对学术论文进行优化。这个工具的出现在Hacker News上引发了热烈讨论。看下

demo 你就会感叹它的效果是多么惊艳:

它的用法也非常简单,适合各路 PhD 们展示论文用。

$pdf2htmlEX比抖朋要插支一圈不者地 /path/to/foobar.pdf

综上

本文介绍了 wkhtmltopdf 和 pdf2htmlEX 这两个将 HTML 和 PDF 格式文档互相转换的神器。但是其实这篇 blog 写来只是因为尘埃落定太久没更新了,写点东西更新一下而已

— EOF —

本文来源于网络:查看 >https://blog.csdn.net/wide288/article/details/41982255

php使用pdf2htmlex,转换 HTML 与 PDF 格式文档的神器相关推荐

  1. Java DOC 转换给 PDF 格式文档的代码

    工作过程,把写代码过程经常用的代码片段备份一次,下面的代码段是关于Java DOC 转换给 PDF 格式文档的代码,应该对码农们有所用. import java.io.File; import jav ...

  2. 如何批量提取 PDF 文档内容,将 PDF 格式文档转为 Txt 文本格式

    概要:PDF 文档常常用来阅读.预览或者存档一些资料,PDF 支持的内容也是比较丰富的.可以支持图片.文本等多种类型的元素.那有时候我们就需要将一些纯文本的 PDF 文档中的文字提取出来,转为一个 T ...

  3. jpg格式图片怎么转换成pdf格式?如何把jpg图片转换成pdf格式文档?

    把图片转换为pdf的软件?什么软件可以把图片转换成pdf格式?有时候我们需要把图片转成pdf.可能还有些小伙伴不知道怎么去完成这项转换的,图片转pdf其实很简单,下面给大家分享一把图片转成pdf的简单 ...

  4. 如何把jpg转换成pdf格式文档

    企业杂志设计.扫描的图片一般都采用JPG格式的.面对网络PDF之类的jpg转换成PDF转换器推出之后,迅捷JPG转换成PDF转换器也应运而生.正式版JPG转为PDF转换软件的特色之处就是包含了了众多的 ...

  5. CAJ格式文档转PDF格式文档的办法(不需要下载杂七杂八的软件或者充会员)

    我最近在做毕业设计,老师布置的任务是先看30篇文献,去知网上下载下来的大多数文献都是CAJ格式,然后用CAJViewer打开之后并不支持我的触控笔,极其难受,就想着看看能不能转换成PDF格式用Acro ...

  6. 简要介绍word文档转换为pdf格式文档的工具

    找了很多工具,其实都是乱七八糟的,没几个好用的,最好还是用Adobe Acrobat Pro吧,这个就很方便了,而且转换的也不错. ABC Amber PDF Converter ABC Amber ...

  7. 用JPG转PDF转换器把图片制作成PDF格式文档

    我们都有这样一个想法,如果能将姥爷姥姥那一代的相册与爸爸妈妈以及我们合在一起,制成一个4680影集该是多么开心的事.要实现这个想法并不困难,21世纪信息化的时代给我们一个明确的答案, JPG转换成PD ...

  8. PPT如何转成PDF格式文档

    最近不少同事要求我们帮忙修改一些来自客户的ppt文件,其实ppt文件修改还是比较简单的,重要的是要将ppt转化成pdf文档,需要一款专业的pdf转换工具.对于这些对ppt文件有更高要求的用户,推荐使用 ...

  9. 有道云笔记markdown最好的转PDF格式文档方法

    其他方法网上说了很多,劣势很明显,反正就是都不好用.直接说最好的办法 第一.需要chrome浏览器 第二.使用网页版有道云笔记打开你编辑好的markdown文档. 第三.在网页版的右上角找到这个按钮: ...

最新文章

  1. Windows RDP协议 Fuzzing 漏洞挖掘研究
  2. 图像处理:如何理解傅里叶变换在图像处理中的应用
  3. 初次使用cocoapods注意事项
  4. 如何避免大脑短路?用心理学分析重庆公交车坠江案
  5. 重磅!AWS任命张文翊女士为全球副总裁及大中华区执行董事!
  6. -bash: mysql_upgrade: command not found
  7. DSB2017第一名代码尝试运行(记录自用)(三)
  8. java基础面试题总结
  9. alter 用法集合(持续更新)
  10. 内存检查工具valgrind介绍、安装与使用
  11. 解决Rocketdock在win7上重启后不能保存设置和图标的问题
  12. 叛乱2 linux服务器,叛乱沙漠风暴怎么开服?开服操作指南详解
  13. OPENGL 简单图形绘制
  14. 计算机内存错误 要降频,win7系统出现内存自动降频的解决方法
  15. “红蓝眼人”问题中旅行者说的话的作用
  16. 一文读懂间隙锁(Gap Locks)
  17. Celestial Altium Library
  18. 文章详情页----- 详细步骤
  19. Flutter 解决App登录页面软键盘遮挡住登录按钮或顶起底部控件的问题
  20. BRD文件转AD文件

热门文章

  1. SAP Spartacus在某些屏幕尺寸下无法正常工作的原因分析
  2. 在SAP UI5应用里使用jQuery.ajax读取数据并显示在页面上
  3. SAP Spartacus 如何取得某个table字段对应的Angular Component
  4. scss里父选择器的标识符
  5. SAP Fiori里Contact Support的按钮渲染逻辑
  6. Java Spring里com.mysql.jdbc.Driver的加载时机
  7. 一种JavaScript里小数的精确计算方式
  8. CL_FXS_URL_DATA_FETCHER - a good utility to fetch picture binary data according to url
  9. no router configuration contained in extension component metadata
  10. SAP Marketing Cloud功能简述(五) : 销售计划管理