gpt4 book ai didi

java - 在java中调整svg图像的大小

转载 作者:行者123 更新时间:2023-12-01 12:27:20 29 4
gpt4 key购买 nike

我面临一个小但烦人的问题。我有一个 svg 图像,比如“test.svg”。我用一个特殊的 Swing 组件(如果您感兴趣,可以使用 SVGSalamander 的 SVGPanel,但这并不重要)来显示它。所以,我完美地显示了我的“test.svg”,我还可以根据需要调整它的大小。现在,我的问题是,当我调整 swing 组件的大小时,我想修改“test.svg”的大小

我的第一个意图是修改 <svg> 的宽度和高度属性元素,但当然它不能按预期工作,因为对象的坐标变得错误。

例如,如果 svg 面板中间有一条水平线:

    //Should be sth like that
<svg ... height='20' width='20'><line x1="0" x2="20" y1="10" y2="10" /></svg>

如果我尝试通过仅更改大小来调整它的大小,我会得到:

    //using my "naive" resize method
<svg ... height='10' width='10'><line x1="0" x2="20" y1="10" y2="10" /></svg>

并且该线不再位于面板中间。相反,它现在位于底部。

所有这些可能都是非常明显的。抱歉,如果是这样的话。

那么,简而言之,我怎样才能得到预期的结果:

    <svg ... height='10' width='10'><line x1="0" x2="10" y1="5" y2="5" /></svg>

非常感谢您的帮助!

最佳答案

将 viewBox 属性放在 <svg> 上元素例如viewBox="0 0 20 20" 。现在您可以更改宽度/高度而不影响内容。

关于java - 在java中调整svg图像的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26216739/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com