如何根据给定的 xml 数据计算 MS Office Powerpoint Shapes 的旋转值

AAK*_*AAK 5 openxml

我想获得正确的旋转值以从给定的 OOXML 数据绘制 MS office Powerpoint 2007 文件的形状,如下所示:

<p:sp>
            <p:nvSpPr>
                <p:cNvPr id="3" name="Rectangle 66" />
                <p:cNvSpPr>
                    <a:spLocks noChangeArrowheads="1" />
                </p:cNvSpPr>
                <p:nvPr />
            </p:nvSpPr>
            <p:spPr bwMode="auto">
                ***<a:xfrm rot="5400000">***
                    <a:off x="2443049" y="-1042472" />
                    <a:ext cx="304800" cy="4419600" />
                </a:xfrm>
                <a:prstGeom prst="rect">
                    <a:avLst />
                </a:prstGeom>
                <a:ln>
                    <a:headEnd />
                    <a:tailEnd />
                </a:ln>
            </p:spPr>
Run Code Online (Sandbox Code Playgroud)

旋转值指定为“xfrm rot = 5400000”。考虑到这一点,必须计算其适当的值,因此必须处理形状的高度和宽度以绘制形状。

Tod*_*ain 4

除以 60000 即可得到旋转角度。在这种情况下,5400000/60000=90 度。它是原地旋转,意味着它以 X 中心和 Y 中心为中心旋转。