当svg包含损坏的图像链接时,如何处理蜡染转码器故障?

时间:2016-05-05 07:17:31

标签: java svg batik

我正在使用蜡染转码器将我的svg转换为png图像。

我在svg图片标签中有外部图像源。如果我的任何图片链接被破坏,Batik都无法进行转换。

我收到以下错误

org.apache.batik.transcoder.TranscoderException: null
Enclosed Exception:
null:0
The URI https://image.example/example1.png
on element <image> can'"t be opened because:
The URI can't be opened:
Server returned HTTP response code: 403 for URL: https://image.example/example1.png
        at org.apache.batik.transcoder.SVGAbstractTranscoder.transcode(Unknown Source)
        at org.apache.batik.transcoder.image.ImageTranscoder.transcode(Unknown Source)
        at org.apache.batik.transcoder.XMLAbstractTranscoder.transcode(Unknown Source)
        at org.apache.batik.transcoder.SVGAbstractTranscoder.transcode(Unknown Source)

即使图片标签坏了,我还能转换svg吗?

2 个答案:

答案 0 :(得分:0)

我之前使用的是batik-rasterizer 1.7,它遇到了和你一样的问题。
你可以在this版本中更新为蜡染全部。

的gradle:
编译组:'org.codeartisans.thirdparties.swing',名称:'batik-all',版本:'1.8pre-r1084380'

答案 1 :(得分:-1)

附有屏幕截图。经过长时间调试后,发现该问题是由于UknownHostException引起的。

org.apache.batik.transcoder.TranscoderException: null
Enclosed Exception:
null:0
The URI "https://url.com/MIP20212_support.png"
on element <image> can't be opened because:
JDK URL is corrupt or unsupported variant

enter image description here