【问题标题】:Getting the placeholder values with Open XML SDK 2.0使用 Open XML SDK 2.0 获取占位符值
【发布时间】:2014-10-08 19:23:23
【问题描述】:

我正在尝试深入了解 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 会为此内置一些方法。

【问题讨论】:

    标签: c# openxml openxml-sdk


    【解决方案1】:

    终于想通了:

    index = int.Parse(shape.NonVisualShapeProperties.ApplicationNonVisualDrawingProperties.PlaceholderShape.Index);

    我本应使用ApplicationNonVisualDrawingProperties,但我使用的是NonVisualShapeDrawingProperties

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-27
      • 2012-10-22
      相关资源
      最近更新 更多