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

标签 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。

最佳答案

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

关于php - 在离线 TideSDK webapp 中将 SVG 导出为 PDF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14277928/

相关文章:

php - 在MYSQL中如何匹配所有以数字或相关符号开头的元素?

javascript - 多个日期选择器/Mindate Bootstrap Angular Datepicker

php - 如何在 PHP 中从一个查询更新两个表

javascript - Typescript 没有选择 Jest 类型

javascript - 当一个 div 打开时,如何在所有其他 div 上设置折叠?

python - 在 Azure Databricks 中按范围内的值进行分组

python - 在 py2exe 编译中包含 .pyd 模块文件

python - 将 header 从 nginx 传递到运行 Flask 应用程序的 uWSGI 后端

php - 时间介于其他两个时间之间吗?

php - 使用 Google App Engine 应用程序更新 Google 群组订阅