如何在Java中有效地绘制SVG图像?

时间:2011-07-19 13:33:48

标签: java svg batik

参考: How can you produce sharp paint results when rotating a BufferedImage?

在引用的问题中,我询问了有关光栅化图像转换的质量问题。有人建议我应该使用SVG图像,因为转换的质量会更高,更灵活。 (这是对的,是吗?)

所以我花了很多时间试图弄清楚如何使用 Batik 库,阅读他们的API并搜索其他人是否遇到过同样的问题。

到目前为止,我还没有遇到任何重大问题,所以我希望有人可以帮助我。这实际上是我想做的事情:

使用BufferedImages以类似的方式使用AffineTransform和Graphics2D的drawImage(...),可以(以及如何)转换然后将SVG图像/对象绘制到JPanel的?

我想在绘制它之前,我可以先根据AffineTransform对象以某种方式对其进行光栅化,然后使用Graphics2D进行绘制,但是如果我必须在每次绘制图像之前进行光栅化...当然有更好的方法。

经过深思熟虑后,我想知道SVG是否真的是这样的方式。 那么我应该采取的最佳方法是什么? 光栅化与矢量图像。

注意:创建SVG文件根本不是问题。

感谢。

1 个答案:

答案 0 :(得分:0)

我在pdf上下文中使用这个库(使用jasper / iReport),结果是正确的。我试过Batik,但我发现它很难使用