2010-04-27 24 views
4

我有一个100x100像素(例如)的svg文件。 我正在使用蜡染。如何调整svg(使用蜡染)并显示它?

如果我做了:

JSVGCanvas svg = new JSVGCanvas(); 
[...] 
svg.setSize(10,10); 

它只会显示画面的这一部分,而不是调整后的图像。

你知道我怎么能显示一个resized svg图片吗?

感谢;)

回答

6

你需要确保你正在显示文档具有viewBox=""属性根<svg>元素上设置。例如,指定viewBox="100 100 300 200"表示区域(100,100)→(400,300)将缩放为JSVGCanvas的大小。默认情况下,此区域的高宽比将在缩放时保留,所以如果与您的JSVGCanvas的高宽比不匹配,您将在顶部或底部获得一些额外的填充。要覆盖该行为,请使用preserveAspectRatio=""属性。

+0

请帮我解决这个问题http://stackoverflow.com/questions/15414649/upscaling-images-in-batik – Mihir 2013-03-14 16:21:02

0

查看框参数允许您设置想要查看/显示的画布部分。 如果你想“调整”你的SVG(一个SVG没有真正的大小,因为它是一个矢量图像),您可以添加/更改参数宽度高度存在于<svg>标题是这样的:

<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="text/ecmascript" zoomAndPan="magnify" width="1200" height="720" contentStyleType="tex ....</svg> 

如果要更改视图框,你可以在<svg>头(由720一1200高清视图)添加参数

viewBox="0 0 1200.0 720.0"