1

我正在使用 Java Graphics2D 相关库以编程方式生成大图像。我正在使用 Batik 的 SVGGraphics2D 类来允许渲染到 SVG。

我的挑战是我有一组已经是 SVG 格式的图标,我想将它们嵌入到更大的图像中。

根据 Batik 文档,我了解如何使用 ImageTranscoder 将图标 SVG 文件带入 Graphics2D 环境。然而,这个过程正在光栅化 SVG 文件并将它们转换为 BufferedImage。

结果是,当我以较大尺寸渲染主图像时,图标看起来很糟糕,而图像的其余部分则很清晰。

有没有办法使用 SVGGraphics2D 嵌入 SVG 图像而不首先对其进行光栅化?

谢谢

4

1 回答 1

0

使用createElementNS创建一个 SVG<image>元素,使用setAttributeNS将 xlink:href 属性设置为托管 SVG 图标的位置,使用setAttribute设置 x、y、width 和 height 属性。

于 2013-08-31T07:01:32.937 回答