我在python中使用Apache Batik SVG Rasterizer Library但是当我尝试将svg转换为png时我得到此错误Gtk-WARNING **:无法打开显示:
如何不使用GTK转换SVG文件
谢谢,对不起我的英文!
我的代码就是这个
gij --jar batik/batik-rasterizer.jar file.svg
我使用GIJ couse是一个共享主机。
谢谢!
答案 0 :(得分:2)
您有代码示例吗?该错误表示您正在无头/无显示系统上执行绘图。这可能不是由于SVG转换而是由于调用显示绘图/窗口或类似的东西。如果您在环境中附加监视器或设置DISPLAY变量,则错误将消失。
此外,您获得的错误只是一个警告。蜡染光栅化器可能依赖于未提供的其他依赖性jar。可能需要使用类路径设置或包装脚本。尝试从蜡染文件夹中运行batik-rasterizer,即
cd batik; gij --jar batik-rasterizer.jar ../file.svg
答案 1 :(得分:0)
试试这个:
$ export DISPLAY=java; gij -Djava.awt.headless=true --jar batik/batik-rasterizer.jar file.svg
更多关于http://java.sun.com/developer/technicalArticles/J2SE/Desktop/headless/
答案 2 :(得分:0)
我找到了此信息http://xmlgraphics.apache.org/fop/1.0/graphics.html#batik
以下是一些解决方法:
以下是“如何在Linux服务器中安装Xvfb(X11服务器)” http://corpocrat.com/2008/08/19/how-to-install-xvfb-x11-server-in-linux-server/