我正在使用 PHP 从数据库中生成 docx 文档。生成的文档包含附有标签的柱形图(即包含文本框的用户形状)。为了让文本框容纳和显示所有文本(即用户不必调整文本框的大小来查看所有文本),我的代码计算了 3cm 中可以容纳多少个字符,添加换行符所需的字符串,并告诉我需要多少行文本。我有:
<a:xfrm xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main">
<a:off x="1638276" y="1676399"/>
<a:ext cx="1257325" cy="'.(252000 * $labelLeftLines).'"/>
</a:xfrm>
我相信它应该给我一个大约 3.5 厘米宽的文本框(内部填充额外的 0.5)和 0.7 厘米的高度乘以 $labelLeftLines 的值。但是,文本框总是显示为 3.cm 宽 x 0.86cm 高,它只显示一行文本。如果我添加“自动调整”:
<a:bodyPr xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" vertOverflow="clip" wrap="square" rtlCol="0">
<a:spAutoFit/>
</a:bodyPr>
生成的文件看起来一样,但是,当我右键单击文本框以检查属性时,确实应用了“自动调整”。我必须取消选中它并重新选中它以使其影响文本框。那里有任何 openXML 大师吗?