我目前正在Visio 2010中创建自定义容器形状,但在获取正确的调整大小行为方面遇到一些麻烦。 我的容器由一个主矩形和一个右上角的小三角形组成(见图)。这两种形状都是分组的。
调整此组的大小时,我希望矩形调整大小,但三角形应保持其原始大小和宽高比,并保持“附加”到矩形的一侧。
当我将三角形的调整大小行为设置为“使用组设置”(默认)时,它会在调整大小时变形:
当我将三角形的调整大小行为设置为“仅重新定位”时,它不会保持附加到矩形:
有什么方法可以达到预期的行为吗?
答案 0 :(得分:6)
如果要将三角形保持在相同的相对位置,并且保持相同的绝对大小,则需要使用形状表。
您感兴趣的公式将是矩形的PinX,PinY,Width和Height。宽度和高度应该保持不变,因此公式应该是= GUARD(0.25英寸),其中你用宽度或高度应该替换0.25。
对形状进行分组时,Visio会自动设置公式以拉伸子形状,并将它们移动为组形状大小的比例。因此,如果您查看Triangle的PinX公式,它可能类似于:= Sheet.1!Width * 0.95。这只意味着三角形的X位置始终为父形状宽度的95%。
但那不是你想要的。你想要的是三角形总是坐在矩形的右边缘。所以要做到这一点,你的公式必须计算为矩形的右边缘(宽度)加上三角形宽度的一半(Pin位置默认是你的形状的中点)。
因此,要制作公式,您需要矩形子形状的ID,您可以通过访问矩形的Format-> Special对话框找到该ID。获得该数字后,三角形的PinX公式应为= GUARD(Sheet.RectangleID!Width +(Width / 2))
我认为只要宽度和高度受到保护,三角形的PinY都应该按原样设置。
答案 1 :(得分:2)
编辑三角形的形状表,使宽度是高度的函数。 W = H * ASPECTRATIO
确保保护细胞,使其不会发生变化。
答案 2 :(得分:0)