【问题标题】:Create PDF from current HTML page [duplicate]从当前 HTML 页面创建 PDF [重复]
【发布时间】:2012-10-25 20:06:03
【问题描述】:

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

我在一个基本的 Apache 上,除了默认启用之外没有任何扩展,我想从当前页面创建一个 PDF 文件。

当前页面是 PHP 回显一些变量,但我想从页面上当前显示的 HTML 和文本创建 PDF 文档。

类似于 WHMCS 报价系统。

【问题讨论】:

  • 我想避免使用扩展,但作为最后的手段,我会启用一些扩展。
  • 使用 PHP 库创建 PDF,例如 pdflib.com
  • 您可能必须为此使用wkhtmltopdf。它使用 webkits CSS 的东西,并且支持很多选项,但是在服务器上安装有点麻烦。

标签: php html


【解决方案1】:

您可以使用第三方解决方案,例如:

http://pdfcrowd.com/

http://www.web2pdfconvert.com/

http://html-pdf-converter.com/

我推荐 pdfcrowd.com - 它有一个您可以使用的 API,而且我之前使用过该服务并且没有遇到任何问题。

【讨论】:

    【解决方案2】:

    我测试过的唯一纯 PHP 解决方案是 mPDF,它非常适合我的目的。它接受 HTML/CSS 输入并从中生成 PDF。

    它需要大量内存,因此您必须增加脚本的内存限制。对我有用的设置是:

    ini_set('memory_limit', '1024M');
    ini_set('pcre.backtrack_limit', 2000000);
    

    【讨论】:

    • 所有 pdf 库(tcpdf、mpdf 等)都需要大量内存。所以如果在项目中你需要最多 5 页的简单发票,它会很好用,但如果需要生成大的 pdf 文件,那么最好使用服务器端生成,例如 wkhtmltopdf
    【解决方案3】:

    您也可以查看dompdf。它从 HTML 创建 pdf !它可能更适合您的要求,但我个人更喜欢 FPDF(CSS 有时让我对 domdf 感到疯狂:-))

    【讨论】:

      【解决方案4】:

      我使用 TCPDF 从 HTML 创建 PDF。我认为 DOMPDF 也能做到这一点

      你有几个选择:

      http://php.net/manual/en/book.pdf.php

      FPDF:http://www.fpdf.org/

      TCPPDF:http://www.tcpdf.org/

      DOMPDF:http://code.google.com/p/dompdf/

      顺便说一句:Convert HTML + CSS to PDF with PHP?

      【讨论】:

        【解决方案5】:

        查看FPDFTCPDFDomPDF 或任何其他 PHP PDF 库。

        FPDF 非常轻量级,如果您只是呼应变量,它可能非常适合您。

        TCPPDF 在样式和 css 功能方面更像 HTML->PDF,但文件大小要大一些。它可用于轻松创建发票并使它们看起来不错。

        我没有亲自使用过DomPDF,所以我不会评论它,但它可以完成工作。

        【讨论】:

          【解决方案6】:

          看看FPDF

          它是一个免费的库,用于在 php 中生成 .pdf 文档。

          【讨论】:

          • FPDF 很棒,但它不会将 HTML 转换为 PDF。
          • 我有一个预定义的引用,它使用 HTML 和 CSS 设置样式。使用 PHP 从 MYSQL 数据库中提取有关报价的信息,我需要从确切的布局创建一个 PDF 文件
          • @DarylGill 你没有太多选择。 PHP 不包含 HTML 渲染器。使用样式渲染 HTML 非常复杂,渲染器是高度专业化的代码片段。不过,有些渲染器可能会在一定程度上渲染 HTML,但我不确定结果。它不具备完整网络浏览器的功能。
          猜你喜欢
          • 2015-09-05
          • 1970-01-01
          • 2012-05-22
          • 2019-08-04
          • 2017-10-20
          • 1970-01-01
          • 1970-01-01
          • 2012-01-23
          • 1970-01-01
          相关资源
          最近更新 更多