PPTX - 查找文本是否是OpenXML中的项目符号

Hav*_*ons 5 openxml presentationml

我找不到任何可以告诉我txBody标签中的文字是否带项目符号的指示器,你能不能指出我应该用哪个指示器来理解文本是否是项目符号?

-谢谢

Flo*_*ing 3

在 txBody 标签内,您可以查找标签“a:buFont”和“buChar”,它们可以帮助您识别文本是否带有项目符号。例如。

\n\n
<a:buFont typeface="Arial" pitchFamily="34" charset="0"/>\n<a:buChar char="\xe2\x80\xa2"/>\n
Run Code Online (Sandbox Code Playgroud)\n\n
\n

更新:

\n
\n\n

你好,+1 发布这个问题,从中学到了很多东西。

\n\n

谷歌搜索后,我发现这个链接解决了类似的问题,Adamm 的回复清除了这一点,

\n\n
\n

“好的,所以我想我已经弄清楚了。基本上,如果布局或幻灯片中没有指定格式\n,它就会转到母版,如果\n它是\'title\'或\'ctrTitle\'形状它使用 \n 中的格式,默认为 lvl1。对于标题形状中未\n 的文本也是如此,对于这些文本,它默认为\n 中的格式,如果未指定 lvl,则默认为 lvl1。并且\n 另一条建议,虽然与我原来的\n 问题无关,但 SlideMaster 中还有另一个 txStyle,\n 用于形状不在 txBody 中的文本。”

\n
\n\n

现在,您的 pptx 中的幻灯片正在使用“Office 主题”,并且您感兴趣的文本位于幻灯片设计中的格式形状中。项目符号文本继承自 SlideMasters 中的 slipMaster1.xml。

\n\n

正如上面引用中提到的,项目符号文本是从slideMaster1.xml 中“p:bodyStyle”的“a:lvl1pPr”继承的,您还可以看到 Office 主题幻灯片母版的 2 级项目符号默认为“-”那里。

\n\n

我尝试通过将 char = "\xe2\x80\xa2" 更改为 ">" 来确认这一点,以查看以下行中的项目符号更改为 ">"

\n\n
<p:bodyStyle>\n      <a:lvl1pPr marL="342900" indent="-342900" algn="l" defTabSz="914400" rtl="0" eaLnBrk="1" latinLnBrk="0" hangingPunct="1">\n        <a:spcBef>\n          <a:spcPct val="20000"/>\n        </a:spcBef>\n        <a:buFont typeface="Arial" pitchFamily="34" charset="0"/>\n        <a:buChar char="\xe2\x80\xa2"/>\n        ....\n
Run Code Online (Sandbox Code Playgroud)\n\n

现在,如果您想以编程方式更改它,您可以从幻灯片母版 1 中执行此操作。但这里唯一的问题是,当我们在此处更改项目符号样式(如上所示)时,它会更改所有幻灯片以及您将来的幻灯片在你的 ppt 中使用相同的主题进行创作。

\n\n

希望这可以帮助。

\n\n

问候。

\n