在 Office 里面的文本解析最全的范围是 Word 文本,就是属性数量本身就特别多。本文只是简单和大家聊聊 Office 里面的 PPT 的文本的解析入门。尽管 PPT 的文本也是采用 DrawingDL 的文本属性为主,不过会用到的属性将比 Word 少很多。本文将和小伙伴介绍 PPT 的文本存放的方式
在 PPT 中的文本框也是形状,只是形状里面添加了特殊的设置。而没有添加特殊设置的形状也可以添加文本,在 PPT 的文本使用 <p:txBody>
包含,这就是本文主要和大家介绍的内容
阅读本文,你将能大概了解如何开始入手 PPT 的文本解析,以及了解相应的工作量
在开始之前,我期望你是了解 PPT 的整个元素的存放格式的,请看 dotnet OpenXML 解析 PPT 页面元素文档格式
最简单的文本元素,当然,我这里的简单说的是文本解析层的。此时的文本将不引用全局的和占位符等的样式信息,此时的文本将包含自己的所有信息,此时的文本解析是最简单的
简单的文本在 <p:txBody>
里面将会包含一个 <a:bodyPr>
的值,这个值对应在 OpenXML SDK 的 DocumentFormat.OpenXml.Drawing.BodyProperties 类。也就是在 <a:bodyPr>
有啥属性和值都可以在 BodyProperties 这个类里面找到,当然有些可选的值只能通过 GetFirstChild 方法获取了,这部分就不细说了
需要科普的,放在 DocumentFormat.OpenXml.Drawing
的内容意味着是 DrawingDL 的定义,也就是将是 Office 多个格式如 PPT 和 Word 等共同使用的定义,因此对 DrawingDL 的解析完成基本上对 Office 的多个格式的这部分解析也是算完成。关于 DrawingDL 等 Office 多个格式的关系,请小伙伴看