[英]Getting the placeholder values with Open XML SDK 2.0
我正在嘗試向下鑽取PowerPoint幻燈片中的shapetree以獲取形狀的占位符值。 shapetree上的形狀如下所示:
<p:sp>
<p:nvSpPr>
<p:cNvPr id="10" name="Text Placeholder 2"/>
<p:cNvSpPr>
<a:spLocks noGrp="1"/>
</p:cNvSpPr>
<p:nvPr>
<p:ph type="body" sz="quarter" idx="13" hasCustomPrompt="1"/>
</p:nvPr>
</p:nvSpPr>
<p:spPr>
<a:xfrm>
<a:off x="457200" y="3276601"/>
<a:ext cx="8229600" cy="838199"/>
</a:xfrm>
<a:prstGeom prst="rect">
<a:avLst/>
</a:prstGeom>
</p:spPr>
<p:txBody>
<a:bodyPr lIns="91421" tIns="45710" rIns="91421" bIns="45710"/>
<a:lstStyle>
<a:lvl1pPr marL="0" indent="0" algn="ctr">
<a:buFontTx/>
<a:buNone/>
<a:defRPr sz="2400" b="1" baseline="0">
<a:solidFill>
<a:schemeClr val="tx1"/>
</a:solidFill>
<a:latin typeface="+mj-lt"/>
<a:cs typeface="Arial" pitchFamily="34" charset="0"/>
</a:defRPr>
</a:lvl1pPr>
</a:lstStyle>
<a:p>
<a:pPr lvl="0"/>
<a:r>
<a:rPr lang="en-US" dirty="0" smtClean="0"/>
<a:t>Click to enter course title</a:t>
</a:r>
</a:p>
</p:txBody>
</p:sp>
我有興趣獲得的部分看起來像這樣:
<p:nvPr>
<p:ph type="body" sz="quarter" idx="13" hasCustomPrompt="1"/>
</p:nvPr>
我正在嘗試獲取idx
值(在這種情況下為13)。
到目前為止,我正在使用的聲明看起來像這樣(我說“到目前為止”因為我不知道如何完成聲明):
var index = shape.NonVisualShapeProperties.NonVisualShapeDrawingProperties. <-???
在代碼的這一點,我有我想要的形狀,我只是無法弄清楚如何使用Open Office SDK獲取占位符值。 我想我可以將它視為普通的舊XML並按元素名稱獲取它,但我認為OOXML SDK將內置一些方法。
最后想出了如何做到這一點:
index = int.Parse(shape.NonVisualShapeProperties.ApplicationNonVisualDrawingProperties.PlaceholderShape.Index);
當我應該使用ApplicationNonVisualDrawingProperties
時,我正在使用NonVisualShapeDrawingProperties
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.