使用PHP将HTML转换为PDF?

时间:2009-04-09 07:41:24

标签: php pdf pdf-generation

  

可能重复:
  Convert HTML + CSS to PDF with PHP?

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

具体而言,该页面是动态生成的发票。所以我希望它使用:

加载
http://example.com/invoices/3333

HTML输出必须转换为PDF。

任何做这件事的好图书馆都没问题。

8 个答案:

答案 0 :(得分:60)

如果你想从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);只需2秒即可获得带有CSS2的3页xHTML文档。这是最近的一个项目,无论如何,google.code页面经常更新。

htmldoc:这个是一个坦克,它从来没有真正停止/崩溃..该项目自2007年以来看起来已经死了,但无论如何如果你不需要CSS兼容性,这对你来说很不错。

答案 1 :(得分:5)

TCPDF怎么办?

有很多功能,使用它有一个优点,你可以动态地将html转换为pdf

答案 2 :(得分:3)

我个人不相信所有免费提供的服务。您可以下载以下应用程序:http://www.tufat.com/script19.htm

答案 3 :(得分:1)

您可以使用PDFlib。有php.net on how to utilize it的文档。唉,如果你没有购买PDFlib的许可证,你必须使用相当突兀的水印。

答案 4 :(得分:1)

dompdf:https://github.com/dompdf/dompdf

获取html输入字符串并返回pdf-string。

它不是浏览器级别的质量,并且有css问题,但它对于简单的文本文档来说效果很好。

答案 5 :(得分:1)

这个也做得很好:html2pdf

答案 6 :(得分:0)

是的,绝对。

您可以购买现成的解决方案,接受HTML输入并为您转换eh文件。

您可以使用常用的PDFLib来使用PHP生成PDF,但它需要您通过设置页面上的所有元素来手动创建它们。

这是another one我用过的非常好

答案 7 :(得分:0)

php类的问题是AFAIK 2:

  1. 速度:php需要长时间来解析html结构并使用pdflib 转换 pdf文件
  2. 可靠性:当新的css或style属性出现时,如何保持脚本更新?多少时间?
  3. 我认为进行准确转换的唯一方法是使用浏览器包装器,因为定义上,它总是更好的HTML阅读器。

    我建议使用其他链接进行比较:LINK 这就是我读到的关于wkhtmltopdf的地方..也读了所有的评论,还有很多其他的方式......