设置SVG文件的大小(通过Batik)

时间:2016-01-03 18:27:25

标签: svg batik

如果我渲染到位图,则位图具有特定数量的像素和DPI。这种组合可以很容易地绘制一个1“x 1”的正方形 - 我为DPI像素长的每一边渲染线条。

当我创建一个SVG时,我认为它仍然可以这样设置。我设置每英寸的单位,以及整个对象的单位大小。是的,您可以放大SVG文件,因为它是所有矢量,但它仍然应该有100%的缩放尺寸来渲染。

在我的情况下,我正在为我的单位使用EMU。所以914400单位/英寸。问题#1是,如何使用Batik设置缩放比例。对于位图,它是:

AffineTransform scaleToEmus = AffineTransform.getScaleInstance(dpi / (float) DrawingSurface.EPI, dpi / (float) DrawingSurface.EPI);
graphics.transform(scaleToEmus);

但SVG没有等效的dpi。

然后对于给定的宽度&在EMU中的高度,我是否使用以下方法设置图像的大小(或最大范围):

svgGraphics.setSVGCanvasSize(new Dimension(width, height));

我想我还没有完全理解SVG,或者至少是Batik,因为我没有看到如何将单位设置为100%缩放渲染。

0 个答案:

没有答案