[英]batik-rasterizer.jar - convert svg to png
我嘗試使用以下命令在我的linux服務器中設置導出服務器,從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機器中完美地創建了一個圖像,但是我將它上傳到我的linux服務器中,我收到了錯誤。
About to transcode 1 SVG file(s) Converting 1a6b5dd08ec607454b81f91097fb24a6.svg to temp/1a6b5dd08ec607454b81f91097fb24a6.png ... (.:21519): Gtk-WARNING **: cannot open display:
為什么會這樣?
我注意到圖像是用0 kb無效圖像創建的
注意: 我也嘗試了以下方法 。
1)包含batik-rasterizer.jar的文件夾,文件以root身份擁有,權限設置為777。
2)我也嘗試用/ user / bin / java執行它, 這是java insted pf java命令。
3)我也嘗試使用putty使用終端以root身份執行此命令,Java安裝在我的服務器中。
使用-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)也可能會解決此問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.