【发布时间】:2020-03-20 08:15:21
【问题描述】:
这是一个带有子形状的 groupShape:
<p:nvgrpsppr>
<p:cnvpr name="Group 256" id="260" />
<p:cnvgrpsppr>
<a:grpsplocks nochangeaspect="1" />
</p:cnvgrpsppr>
<p:nvpr />
</p:nvgrpsppr>
<p:grpsppr bwmode="auto">
<a:xfrm>
<a:off y="1940518" x="2952779" />
<a:ext cy="2209679" cx="1219680" />
<a:choff y="1052" x="1972" />
<a:chext cy="1116" cx="616" />
</a:xfrm>
<a:solidfill>
<a:srgbclr val="F7B63E" />
</a:solidfill>
</p:grpsppr>
<p:sp>
<p:nvsppr>
<p:cnvpr name="Freeform 257" id="262" />
<p:cnvsppr>
<a:splocks noeditpoints="1" />
</p:cnvsppr>
<p:nvpr />
</p:nvsppr>
<p:sppr bwmode="auto">
<a:xfrm>
<a:off y="1160" x="2161" />
<a:ext cy="287" cx="288" />
</a:xfrm>
</p:sppr>
</p:sp>
当我取消组合时,得到这个:
<p:grpsppr>
<a:xfrm>
<a:off y="0" x="0" />
<a:ext cy="0" cx="0" />
<a:choff y="0" x="0" />
<a:chext cy="0" cx="0" />
</a:xfrm>
</p:grpsppr>
<p:sp>
<p:nvsppr>
<p:cnvpr name="Freeform 257" id="262" />
<p:cnvsppr>
<a:splocks noeditpoints="1" />
</p:cnvsppr>
<p:nvpr />
</p:nvsppr>
<p:sppr bwmode="auto">
<a:xfrm>
<a:off y="2154358" x="3326999" />
<a:ext cy="568260" cx="570240" />
</a:xfrm>
</p:sppr>
</p:sp>
childShape 转换为绝对定位。
<a:xfrm>
<a:off y="1160" x="2161" />
<a:ext cy="287" cx="288" />
</a:xfrm>
converted to:
<a:xfrm>
<a:off y="2154358" x="3326999" />
<a:ext cy="568260" cx="570240" />
</a:xfrm>
我通过计算计算了长度和宽度。
width = (group a:ext:cx) / (group a:chExt:cx) * (child a:ext:x >);
height = (group a:ext:cy) / (group a:chExt:cy) * (child a:ext:y >);
但是我尝试了很多种操作,都无法得到x坐标和y坐标的转换方法。
我应该通过什么操作来将 y:1160 转换为 y:2154358。
请给我一些建议。
【问题讨论】:
标签: java apache-poi openxml shapes