在离线TideSDK webapp中将SVG导出为PDF

时间:2013-01-11 12:10:22

标签: php javascript python pdf svg

我有一个使用TideSDK构建的离线HTML5 / CSS / JS应用程序,其中使用Highcharts作为SVG"标记"绘制条形图。使用用户输入的数据。我需要将此图表导出为PDF文档,该文档还将包含文本和表格。

由于它是一个离线应用程序,我无法使用Highcharts中包含的导出模块(getSVG()方法除外)或DocRaptor等其他解决方案。

我打开使用另一个JS插件绘制图表,但我真的很喜欢"外观和感觉"和Highcharts图的功能。

正如您所知,使用TideSDK,我可以在我的应用程序中嵌入Python,PHP或Perl脚本/模块(我更喜欢避免使用Perl,因为我从未使用它)。

另一个限制是我不能要求最终用户安装另一个软件而不是我的软件,所以我不能在PHP上使用wkhtmltopdf。除非我设法通过我的应用程序在透明的过程中安装它(不确定它是否特别容易)。

在搜索了几天后,我的最终想法是使用CairoSVG Python模块在第一个PDF中导出图形。然后我会找到一个JS(jsPDF)或Python工具,将这个PDF包含在包含文本和表格的最终PDF中。

我会尽快开始测试这个解决方案,让你知道我是否管理过它。然而,如果你们中的一些人已经要解决类似的问题,我将很高兴听到你的解决方案。

该应用程序将首次在Windows平台上运行,并且应在后期阶段适应MacOS,Linux,Android和iOS。

1 个答案:

答案 0 :(得分:0)

有简单的命令行工具(wkhtml到pdf),可以将html页面转换为pdf文件。它不是严格的python / js解决方案,但你可以从python中调用os.system()或类似的东西来使用它。它帮助我使用我的python程序,它使用起来非常简单。命令是“wkhtmltopdf.exe inputname outputname”,你得到你想要的。它的免费软件。网站:https://code.google.com/p/wkhtmltopdf/