使用PHP将HTML转换为PDF(不是PDF转换为HTML)

我是一名PHP开发人员,在我的一个项目中,我需要将一些HTML文档(大约30到50页)转换为PDF文档。

我的搜索发现了以下可能的解决方案。 其中有一些PHP库和一些命令行应用程序。 各有其优点和缺点。

PHP库:

  • fpdf(需要更多努力来转换)
  • tcpdf(需要更多努力来转换)
  • html2fpdf http://html2fpdf.sourceforge.net
  • html2pdf http://html2pdf.fr/
  • dompdf http://code.google.com/p/dompdf/(与其他相比,效果很好)
  • 对于每个图书馆,我都有类似的问题:

  • 花费很长时间(超过五分钟才能转换30个HTML页面)
  • 需要太多资源(内存和时间)

    (我在php.ini中设置了以下参数:

    max_execution_time = 600
    memory_limit = 250M

    但事情仍然不起作用。)

  • 需要格式良好的HTML页面(例如,不要缺少关闭标签)

  • 所有这些工作,当我尝试转换简单的HTML文档(五个或更少的页面与小CSS)

    命令行应用程序

    与上述库相比,所有命令行应用程序都可以非常快速地工作,但只有在控制台上直接运行它们时才是如此。 当我尝试在PHP中使用exec()system() ,他们给我错误。

    以下是我在PHP中运行它们时的命令行应用程序及其错误:

  • html2pdf(http://www.tufat.com/s_html2ps_html2pdf.htm)

    html2pdf:11380):Gtk-WARNING **:无法打开显示:: 0.0
    没有指定协议

  • wkhtmltopdf

    载入页面:10%
    载入页面:33%
    载入页面:100%
    等待重定向
    输出页面
    QPainter :: begin():返回false
    QPainter :: begin():返回false
    QPainter :: save:画家不活跃
    QPainter :: scale:画家不活跃
    QPainter :: setRenderHint:Painter必须处于活动状态才能设置渲染提示
    QPainter :: setBrush:画家不活跃
    QPainter :: pen:画家不活跃
    QPainter :: setPen:画家不活跃

  • htmltopdf(http://www.ultrashareware.com/html-to-pdf.htm)

  • 所以现在我正在寻求帮助。 谁能回答:

    我的情况下哪个PHP库会工作得很好?

    为什么在命令行应用程序中出现这些错误?


    关于wkhtmltopdf

  • 这件事情的速度非常快,它也可以处理你扔到它的各种HTML / CSS,所以当你需要速度时,你应该仔细考虑它。 我们最近在我们公司切换到了它,并且我们的PDF服务获得了极大的速度提升。

  • 至少在Linux下需要安装XOrg库 - 服务器通常没有它们,所以这可能是你的问题。


  • 尝试这个:

  • tecnick.com/public/code/cp_dpage.php?aiocp_dp=tcpdf_examples
  • fpdf.org
  • http://code.google.com/p/wkhtmltopdf/

  • 你有没有试过王子?

    链接地址: http://www.djcxy.com/p/88487.html

    上一篇: Converting HTML to PDF (not PDF to HTML) using PHP

    下一篇: how to convert the php file in to pdf file