5

我使用 OpenXml 以这种方式创建自定义 powerpoint 演示文稿:我在演示文稿上放置了一个关键字,我在使用 OpenXml 的过程中找到了它并更改了文本值。一切正常,但 fit 选项起初不起作用。文本框有选项“自动调整:溢出时收缩文本;在形状中换行:打开”经过我的处理,新文本出现在正确的位置但自动调整没有完成,我需要点击文本框并制作一个输入以查看自动调整工作。我认为 PowerPoint 仅在修改后检查选项。

我想要的是在过程结束时调用 autofit 选项。谁能帮我?

我希望你明白我想做什么。

谢谢。

4

1 回答 1

6

仅使用 OpenXML 是不可能的。<a:normAutofit/>客户端应用程序(如 PowerPoint)使用该标记来根据需要放大或缩小文本。OpenXML 实际上并不渲染任何东西,所以在客户端渲染之前,它只会读取文本,就好像它不是自动适配的一样。

有几个选项可以考虑来控制这一点 - 但是它们都不是很好。一种是在 PowerPoint 中使用 VSTO 或 VBA 来检查 PPTX 打开的所有形状,如果它们有 AutoFit 标签,则重新渲染它们。第二种方法是根据形状的宽度和高度自己进行所有字体测量,然后将字体比例设置为适当的百分比。另一种方法是使文本框足够大以容纳您将插入的最大数量的文本,然后关闭自动调整。

抱歉,这并不能立即帮助您。我已经对这个特定主题进行了大量研究,但这都是坏消息。

于 2012-10-03T20:02:48.830 回答