删除PresentationML文档中的新行字符

时间:2012-09-24 18:10:17

标签: c# openxml openxml-sdk

我正在尝试使用格式化的PPTX文件将我自己的数据插入到标记中。但是,在某些情况下,我需要删除标记并在< problem>中备份一行。和< problemNoTab>部分。但是,在OOXML中,xml标签用于处理这种情况,因此“\ n”字符不可见。我不知道如何继续,因为我不能做典型的标签匹配。

模板的代码如下:

  <p:txBody>
   <a:bodyPr>
    <a:normAutofit />
   </a:bodyPr>
  <a:lstStyle />
  <a:p>
   <a:r>
    <a:rPr lang="en-US" b="1" dirty="0" smtClean="0" />
    <a:t>Problem</a:t>
   </a:r>
  </a:p>
  <a:p>
    <a:pPr marL="914400" indent="-914400" />
    <a:r>
     <a:rPr lang="en-US" sz="1000" smtClean="0" />
     <a:t>&lt;Problem&gt;</a:t>
    </a:r>
    <a:endParaRPr lang="en-US" sz="1000" dirty="0" smtClean="0" />
  </a:p>
  <a:p>
     <a:pPr marL="0" indent="0" />
     <a:r>
      <a:rPr lang="en-US" sz="1000" dirty="0" smtClean="0"/>
          <a:t>&lt;ProblemNoTab&gt;</a:t>
     </a:r>
     <a:endParaRPr lang="en-US" sz="1000" dirty="0" smtClean="0" />
  </a:p>

如何删除断裂线或其他要查看的地方的任何提示都将非常感激。我在字符串替换中尝试了基本的转义字符,例如“\ b”和删除字符。

1 个答案:

答案 0 :(得分:2)

我找到了解决方案。在C#中,我有一个DocumentDrawing.Text个对象的集合,我要删除的对象,我只是使用textPart.Parent.Parent.Remove()并删除了段落,基本上删除了新行。

不知道这对任何人都有用,但它对我有用。