【问题标题】:how to convert dynamic contents of html page to pdf如何将html页面的动态内容转换为pdf
【发布时间】:2012-03-22 15:28:54
【问题描述】:

在 html 页面中,一些标签是使用 jquery 动态创建的,内容是使用 jquery 和 php 从 msql db 加载的。 我想将此动态页面转换为 pdf。 我尝试过以下代码,但它会生成 html 页面静态部分的 pdf。

<?php
    ob_start();
?>
//html code and internal css, javascript used in external file with jquery library
<?php
  include('dompdf/dompdf_config.inc.php');
  $contents = ob_get_contents();
  ob_end_clean();
  $dompdf = new DOMPDF();
  $dompdf->load_html($contents);
  $dompdf->render();
  $dompdf->stream('file.pdf'); 
?>

那么如何在处理后(使用 javascript/php)将动态 html 页面的内容存储在 php 变量中,并使用 dompdf 或其他转换器将其转换为 pdf。

【问题讨论】:

  • 除非实际执行JS代码,否则无法完成。 PHP 不是 JS 解释器。

标签: php pdf dompdf


【解决方案1】:

我建议你看看 wkhtmltopdf。我用它渲染谷歌图表取得了很好的效果,这些图表是从 javascript api 动态构建的。

http://code.google.com/p/wkhtmltopdf/

【讨论】:

    【解决方案2】:

    正如 Marc 所说,您必须使用 javascript 读取生成的 DOM.. 类似 $('html').html() 的内容,然后将其发布到 php 以生成 pdf

    【讨论】:

      【解决方案3】:

      这可能不完全符合您的要求,但wkhtmltopdf 可能是您所需要的。由于 PHP 是一种服务器端技术,您将很难让它处理任何客户端 JavaScript。 wkhtmltopdf 扫描页面、javascript 和所有内容,然后在服务器上生成一个 pdf 文件。希望对您有所帮助!

      【讨论】:

        【解决方案4】:

        考虑使用wkhtmltopdf 之类的工具直接将页面生成为PDF。它将运行 javascript 并按照 WebKit 的呈现方式生成页面。

        【讨论】:

          猜你喜欢
          • 2017-05-29
          • 1970-01-01
          • 2016-07-10
          • 2015-09-06
          • 2013-09-05
          • 1970-01-01
          • 2011-01-13
          • 2011-07-01
          相关资源
          最近更新 更多