微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

是否可以通过更改 OOXML 来更改 Word 中内联对象的“relativeHeight”或 Z 顺序?

如何解决是否可以通过更改 OOXML 来更改 Word 中内联对象的“relativeHeight”或 Z 顺序?

我正在使用 office.js 创建 Word Web 加载项。

我使用内容控件标记源 Word 文件中的几个对象。我在源 Word 文件的顶部插入一个矩形对象。我的目标是将少数对象(使用内容控件标记)置于插入的矩形上方。

我正在解析 Word 文档的 OOMXL,并试图将一个标记对象放在这页面大小的矩形对象前面,该对象位于源文档中所有先前对象的上方。

对于浮动对象,我可以修改大于矩形的“relativeHeight”,我设法将对象放在前面。

但是,内联对象没有这个“相对属性”吗?手动,在 MS Word 中,我可以将内联对象的布局更改为“在文本前面”,并且该对象显示为具有“relativeHeight”属性的锚点。

enter image description here

OOXML 的区别: 内联对象

<w:drawing>
   <**wp:inline** distT="0" distB="0" distL="0" distR="0" wp14:anchorId="728024E4" wp14:editId="43DF6D69">
   ...
   </wp:inline>
</w:drawing>

浮动对象

<w:drawing>
   <wp:**anchor** distT="0" distB="0" distL="114300" distR="114300" simplePos="0" relativeHeight="251659264" behindDoc="0" locked="0" layoutInCell="1" allowOverlap="1" wp14:anchorId="728024E4" wp14:editId="0AFA4E26">
   <wp:simplePos x="0" y="0"/>
      <wp:positionH relativeFrom="column">
         <wp:posOffset>533400</wp:posOffset>
      </wp:positionH>
      <wp:positionV relativeFrom="paragraph">
         <wp:posOffset>-1905</wp:posOffset>
      </wp:positionV>
      ...
   </wp:anchor>
</w:drawing>

如您所见,锚点和一些位置信息的内联更改是自动添加的。我想知道,如何通过更改任何内联对象的 OOXML 来实现这一点。

解决方法

根据定义,内联对象被视为文本。一个形状,如果它是内联的,可以被认为是一个文本字符。因此,您不能将文本字符放在其他文本的前面或后面。例如,假设您有一个仅包含三个字符的文档:“ABC”,您如何将字符 'B' 放在其他两个字符的后面或前面?谢谢!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。