我试着用下面的命令在我的linux服务器上设置一个导出服务器,把graphics下载为来自Highcharts的图像。
$command = "java -jar batik-rasterizer.jar -m image/png -d temp/1a6b5dd08ec607454b81f91097fb24a6.png temp/1a6b5dd08ec607454b81f91097fb24a6.svg 2>&1 "; $output = shell_exec($command); echo "Command: $command <br>"; echo "Output: $output";
它在我的本地windows机器完美创build一个图像,但我上传到我的linux服务器,我收到错误。
About to transcode 1 SVG file(s) Converting 1a6b5dd08ec607454b81f91097fb24a6.svg to temp/1a6b5dd08ec607454b81f91097fb24a6.png ... (.:21519): Gtk-WARNING **: cannot open display:
为什么会发生?
我注意到一个图像是用0 kb无效图像创build的
为以exec开头的进程设置自定义工作目录
叉和Execlp
如何在C程序中调用execl()之后控制父进程的执行?
ANT执行失败:java.io.IOException:无法运行程序“cp”:java.io.IOException:error = 2,没有这样的文件或目录
32位程序exec()一个64位程序
注意: 我也尝试了以下方法 。
1)包含batik-rasterizer.jar的文件夹,文件拥有者为root,权限设置为777。
2)我也试着用/ user / bin / java来执行它, 其中java insted pf java命令。
3)我也尝试使用putty以root身份执行这个命令,Java被安装在我的服务器上。
exec()和phantomJs问题与绝对path
查找并重命名一个目录
bash / scp如何扩展“远程”全局模式?
Perl – 没有这样的文件或目录exec错误。 文件存在并被正确调用(windows)
C中的后台进程(守护进程)不是execvp()
使用-Djava.awt.headless=true命令行选项执行java:
$command = "java -Djava.awt.headless=true -jar batik-rasterizer.jar -m image/png -d temp/out.png temp/in.svg 2>&1 ";
更新
如果传递额外的命令行选项仍然不会产生预期的结果,请检查您的Java版本。 将JRE更新到更新版本(1.7)也可能解决此问题。
总结以上是内存溢出为你收集整理的batik-rasterizer.jar – 将svg转换为png全部内容,希望文章能够帮你解决batik-rasterizer.jar – 将svg转换为png所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)