【问题标题】:What HTML to PDF libraries handle javascript?哪些 HTML 到 PDF 库处理 javascript?
【发布时间】:2011-06-19 00:43:42
【问题描述】:

我试图弄清楚如何从 HTML 生成 PDF,其中包含使用 flot javascript 库生成的图表。 Dompdf 是我最初的转换库,但在添加浮动图表后它惨遭失败。我环顾四周(特别是https://stackoverflow.com/questions/3178448/list-of-html-to-pdf-converters)并用谷歌搜索了一段时间,但似乎找不到任何明确提供javascript支持的东西。我正在使用 PHP。我在那篇文章中看到有人提到他们在所有情况下都成功使用了 php-wkhtmltox,但图表是由不同的 javascript 库生成的。这是我唯一的机会吗?如果有可用的商业选项,我可能最多支付几百美元。

如果目前的库确实无法做到这一点,那么究竟是什么挑战使得将由 javascript 生成的 html 与普通 html 转换变得如此困难?

谢谢

【问题讨论】:

    标签: php javascript html pdf flot


    【解决方案1】:

    您可以使用wkhtmltopdf

    只需将其解压到您的服务器上,运行命令(查看手册here)。

    谢谢。

    【讨论】:

    • 好吧,这并没有帮助,但你是唯一的回应,所以你赢了。这个库可能运行良好,但是关于如何从 PHP 而不是命令行实现它的文档,以及任何关于它可以和不能用 javascript 做什么的讨论已经说服我放弃我目前的方法。我将放弃 flot 并使用原生 PHP 库将图表生成为图像,然后使用我已经为除 flot 图表以外的所有内容工作过的 dompdf。
    • 感谢您的接受。如果您需要更多帮助,请告诉我。
    【解决方案2】:

    Pdfcrowd HTML to PDF 在线 API 可以运行 JavaScript。您可以下载 PHP 的客户端库并尝试一下。

    这是一个商业 SaaS 解决方案,这里是文档:http://pdfcrowd.com/html-to-pdf-api/

    【讨论】:

      【解决方案3】:

      PDFPY

      sudo npm i pdfpy
      

      var pdfpy = require('pdfpy');

      文件

      var pdfpy = require('pdfpy');
      
          var data = {
              //the key as to be same as below
              input: "./test.html",
              output: "./output.pdf"
          }
          pdfpy.file(data, function(err, res) {
              if(err) throw err
      
              if(res) console.log("success")
          });
      

      网址

      var pdfpy = require('pdfpy');
      
      var data = {
          //the key as to be same as below
          input: "http://google.com",
          output: "./output.pdf"
      }
      pdfpy.url(data, function(err, res) {
          if(err) throw err
      
          if(res) console.log("success")
      });
      

      【讨论】:

        猜你喜欢
        • 2011-11-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-01-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多