我有一个具有椭圆形状的自定义元素:
{
size: { width: 160, height: 80 },
attrs: {
body: {
refCx: '50%',
refCy: '50%',
refRx: '50%',
refRy: '50%',
width: 'calc(w)',
strokeWidth: 2,
stroke: '#333333',
fill: '#FFFFFF'
},
label: {
textVerticalAnchor: 'middle',
textAnchor: 'middle',
refX: '50%',
refY: '50%',
fontSize: 14,
fill: '#333333'
}
}
}
markup = [{
tagName: 'ellipse',
selector: 'body'
}, {
tagName: 'text',
selector: 'label'
}]
我已经启用了元素上的ui.Halo,允许用户调整它们的大小。问题是,通过使用Halo调整大小,用户可以将椭圆的形状更改为圆圈。如何在调整尺寸时保持长径比,使椭圆始终是2:1长径比的椭圆?
发布于 2022-03-22 09:46:01
如果你正在寻找的仅仅是preserveAspectRatio,也许ui.FreeTransform是一个更好的选择。它有一个内置的preserveAspectRatio选项,这样您的椭圆就可以保持大小。
https://stackoverflow.com/questions/71456443
复制相似问题