使用 PHP 将 HTML 转换为 PDF? [复制]

Posted

技术标签:

【中文标题】使用 PHP 将 HTML 转换为 PDF? [复制]【英文标题】:Converting HTML to PDF using PHP? [duplicate] 【发布时间】:2010-10-18 12:10:25 【问题描述】:

可能重复:Convert html + CSS to PDF with php?

是否可以使用 PHP 将 HTML 页面转换为 PDF,如果可以,如何实现?

具体来说,该页面是动态生成的发票。所以我希望它使用以下方式加载:

http://example.com/invoices/3333

HTML 输出必须转换为 PDF。

任何可以做到这一点的好的库都可以。

【问题讨论】:

GrabzIt 有一个免费的 PHP 库,用于将 HTML 转换为 PDF:grabz.it/html-to-pdf-image-api.aspx 【参考方案1】:

如果您希望从 php创建 pdf,pdflib 将帮助您(正如其他人建议的那样)。

否则,如果您想通过 PHP 将 HTML 页面转换为 PDF,您会发现这里有点麻烦.. 3 年来我一直尽力做到最好。

所以,我知道的选项是:

DOMPDF :包装 html 并构建 pdf 的 php 类。效果很好,可定制(如果你知道 php),基于 pdflib,如果我没记错的话,它甚至需要一些 CSS。坏消息:当 html 很大或很复杂时速度很慢。

HTML2PS: 与 DOMPDF 相同,但此文件首先转换为 .ps(ghostscript)文件,然后转换为您需要的任何格式(pdf、jpg、png)。对我来说比 dompdf 稍微好一点,但有同样的速度问题.. 但是,与 CSS 的兼容性更好。

这两个是 php 类,但是如果你可以在服务器上安装一些软件,并通过 passthru() 或 system() 访问它,也可以看看这些:

wkhtmltopdf: 基于 webkit(safari 的包装器),非常快速和强大.. 似乎这是将 html 页面即时转换为 pdf 的最佳工具(atm);使用 CSS2 的 3 页 xHTML 文档仅需 2 秒。是最近的项目,反正google.code页面经常更新。

htmldoc :这是一辆坦克,它永远不会真正停止/崩溃。自 2007 年以来,该项目看起来已经死了,但无论如何,如果您不需要 CSS 兼容性,这对您来说会很好。

【讨论】:

Daniel,那么哪一个最适合 CSS? WkHTMLToPdf? 是的,实际上。我们也很喜欢使用 firefox(带有 torisugary 的命令行插件),因为,你知道,没有什么比浏览器更好的 css 了。 wkhtmltopdf 在 safari 上运行,所以实际上是最好的,恕我直言。我希望 mozilla 很快就会用 gecko 做类似的事情 丹,可以通过php调用wkhtml吗?好像需要手动使用shell调用 当然,passthru() 应该可以工作。类似 passthru('wkhtmltopdf_version.sh yourhtmlpage.html yourpdf.pdf' $return);如果 php 和 apache 权限设置允许这样做,效果会很好。在windows机器上试过,效果很好。 wkhtmltopdf 在我的经验中工作得最好,而且设置步骤最少。

以上是关于使用 PHP 将 HTML 转换为 PDF? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

使用 PHP 将 HTML 转换为 PDF(不是 PDF 到 HTML)[关闭]

如何使用php将html转换为pdf?

使用PHP将带有样式(css)的html转换为pdf

使用 JavaScript 将 HTML 转换为 PDF

需要将显示页面的HTML转换为PDF

使用php将pdf转换为word文档