用SWF文件从网页创建pdf


creating pdf from web page with SWF files

我正试图从一个有图片和swf文件的网页生成pdf。

最终的pdf应该有图片(swf应该转换成图像,最后一帧就足够了)。

当只有图像存在时,我能够生成pdf,但当网页有swf文件时,我被困在创建pdf中。

我以前使用wkhtmltopdf以编程方式从网站呈现pdf文件。我不确定它是否会处理swf,但它可能会这样做,因为它使用了一个编译到qt的webkit版本。

您可以使用wkhtmltopdf --enable-plugins。但是根据这个bug报告,它可能不工作http://code.google.com/p/wkhtmltopdf/issues/detail?id=48与flash插件(Java但是!)。

另一个选项是在无头模式下运行浏览器,或者在虚拟x上运行。如果你使用扩展名"CommandLinePrint",Firefox3应该可以工作。

Xvfb :2 -screen 0 1600x1200x24 &
firefox --display=localhost:2.0 -print http://flashgames.com -printmode pdf -printfile '/tmp/test.pdf'

从http://spielwiese.la-evento.com/xelasblog/archives/31-Headless-Firefox-als-HTML-to-PDF.html窃取的信息(不过是德语)。

但是还有一些像这样的指南("无头浏览器,HTML到PDF")。我完全可以链接到Stackoverflow上的一个傻瓜。但是我现在懒得搜索

由于您想要将目标页面作为PDF输出,我将考虑使用.rdlc(报表定义语言客户端)。它是微软的一部分。报告命名空间,设计用于asp.net。它可以自由使用和重新发布。在许多情况下,网页的布局不是"打印机友好的"。通过使用此技术,您可以重新安排PDF输出的布局和间距,使其更适合打印机。

这不会"直接"将您的页面转换为PDF,而是允许您将页面布局和数据调整为数据集,并使用它来构建报告。然后可以在运行时使用reportviewer控件以编程方式输出该报告。如果您对这种方法感兴趣,请告诉我,我将很乐意提供更多帮助,帮助您完成设置和使用。