如何获取连接器形状的起始坐标?求解坐标判定逻辑
Office形状连接器起始坐标获取与尺寸坐标异常问题
背景
我尝试通过BeginConnectedShape和EndConnectedShape的坐标计算,获取连接器形状的起始坐标。
我创建了两个尺寸完全相同的矩形(高度:50,宽度:100),以及红色的Connector 1和黑色的Connector 2,其中Connector 1的尺寸与矩形一致(高度:50,宽度:100)。
我运行以下VBA代码获取坐标,为后续计算做准备:
Debug.Print "[Rec1]", "T: " & .Shapes(1).Top, "L: " & .Shapes(1).Left, _ "H: " & .Shapes(1).Height, "W: " & .Shapes(1).Width Debug.Print "[Rec2]", "T: " & .Shapes(2).Top, "L: " & .Shapes(2).Left, _ "H: " & .Shapes(2).Height, "W: " & .Shapes(2).Width Debug.Print "[Con1]", "T: " & .Shapes(3).Top, "L: " & .Shapes(3).Left, _ "H: " & .Shapes(3).Height, "W: " & .Shapes(3).Width Debug.Print "[Con2]", "T: " & .Shapes(4).Top, "L: " & .Shapes(4).Left, _ "H: " & .Shapes(4).Height, "W: " & .Shapes(4).Width
得到以下输出结果:
[Rec1] T: 100 L: 0 H: 50 W: 100
[Rec2] T: 50 L: 200 H: 50 W: 100
[Con1] T: 75 L: 100 H: 50 W: 100
[Con2] T: 25,05433 L: 125,0543 H: 199,9999 W: 49,89134
Connector 1的结果符合预期,但Connector 2的坐标及尺寸结果无法理解。我重新调整Connector 2的位置后,得到了更困惑的结果:
[Con2] T: -25,00016 L: 122,6087 H: 200,8695 W: 50,00008
问题
是否有人研究过这部分内容?或者了解连接器坐标的判定逻辑?更希望有人能分享获取连接器起始坐标的可行方法,感谢任何相关线索或建议。
内容的提问来源于stack exchange,提问作者L42
相关产品推荐
相关产品推荐

