有许多 JavaScript 插件可以绘制图表和图形。有关示例,请参阅 http://www.queness.com/post/10781/13-chart-and-graph-plotting-javascript-plugins .
我想创建一个图表并将其转换为图像。我已经尝试使用 http://code.google.com/p/wkhtmltopdf/ 将它们转换为 PDF它工作得很好。对于安装,我使用了 http://www.amberdms.com/?cms=opensource_linux_repositories .
现在,转换为图像。我安装了姊妹产品wkhtmltoimage。 amberdms 在他们的 repo 中没有这个,所以我只使用了一个静态二进制文件。它隐藏了没有图表的简单页面,但是当尝试带有图表的页面时,它没有在图像中包含 JavaScript 图表,我得到以下错误:
[root@localhost ~]# /usr/bin/wkhtmltoimage-amd64 --load-error-handling ignore http://www.bobo.com/lib/plugins/jqPlot/examples/area.html var/www/html/images/example_amd64.jpg
Loading page (1/2)
QPixmap: Cannot create a QPixmap when no GUI is being used ] 86%
....
QPixmap: Cannot create a QPixmap when no GUI is being used
Rendering (2/2)
Error: Could not write to output file
Segmentation fault
[root@localhost ~]#
有人有什么建议吗?
附言。我用的是Centos 5.8 86x64,wkhtmltoimage-i386和wkhtmltoimage-amd64都试过了。
有人有什么建议吗?
谢谢
最佳答案
我在我正在工作的项目中有相同的经历,根据您的主机设置,我找到了两种解决方案:
1.像这样使用'use-xserver'参数
$ ./wkhtmltoimage-amd64 --use-xserver input.html output.jpg
Loading page (1/2)
Rendering (2/2)
Done
这在我的开发机器上非常有效,但是我的托管服务提供商不允许我使用该选项,所以我不得不在谷歌代码存储库中挖掘答案,从而引导我找到下一个解决方案。
出于某种原因,xserver 似乎依赖于 0.11.0 版本,因此我使用了已弃用下载部分提供的旧版本,在这种情况下,0.10.0_rc2 非常适合我的项目。
使用此选项不需要 use-xserver 参数:
$ ./wkhtmltoimage-amd64 input.html output.jpg
Loading page (1/2)
Rendering (2/2)
Done
我希望这些选项中的任何一个对你有用。
关于javascript - 将 JavaScript 图形和图表转换为图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12063657/