如何将html页面的动态内容转换为pdf

时间:2012-03-22 15:28:55

标签: php pdf dompdf

在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'); 
?>

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

4 个答案:

答案 0 :(得分:2)

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

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

答案 1 :(得分:1)

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

答案 2 :(得分:0)

这可能无法满足您的要求,但wkhtmltopdf可能就是您所需要的。由于PHP是服务器端技术,因此您将很难处理任何客户端javascript。 wkhtmltopdf扫描页面,javascript和所有内容,然后在服务器上生成pdf文件。希望这会帮助你!

答案 3 :(得分:0)

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