我在 python 中使用Apache Batik SVG Rasterizer Library,但是当我尝试将 svg 转换为 png 时,我收到此错误 Gtk-WARNING **: cannot open display:
如何不使用 GTK 转换 SVG 文件
谢谢和对不起我的英语!
我的代码是这个
gij --jar batik/batik-rasterizer.jar file.svg
我使用 GIJ couse 是一个共享主机。
谢谢!!
我在 python 中使用Apache Batik SVG Rasterizer Library,但是当我尝试将 svg 转换为 png 时,我收到此错误 Gtk-WARNING **: cannot open display:
如何不使用 GTK 转换 SVG 文件
谢谢和对不起我的英语!
我的代码是这个
gij --jar batik/batik-rasterizer.jar file.svg
我使用 GIJ couse 是一个共享主机。
谢谢!!
你有代码示例吗?该错误表明您正在无头/无显示系统上执行绘图。这可能不是由于 SVG 转换,而是由于调用显示绘图/窗口或类似的东西。如果您在环境中附加监视器或设置 DISPLAY 变量,该错误将消失。
此外,您得到的错误只是一个警告。batik rasterizer 可能依赖于未提供的其他依赖项 jar。可能您需要使用类路径设置或包装脚本。尝试从 batik 文件夹中运行 batik-rasterizer,即
cd batik; gij --jar batik-rasterizer.jar ../file.svg
尝试这个:
$ export DISPLAY=java; gij -Djava.awt.headless=true --jar batik/batik-rasterizer.jar file.svg
更多关于http://java.sun.com/developer/technicalArticles/J2SE/Desktop/headless/
我找到了这个信息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/