2012-08-13 23 views
4

我正在使用OpenXML將文本添加到段落節點。我正在封裝OpenXML方法,並且有以下方法來追加文本,這可以在沒有標記的情況下正常工作。OpenXML中的製表符字符

public void AddPlainParagraphText(string text) 
    { 
     m_wordprocessingDocument.MainDocumentPart.Document.Body.AppendChild(
      new Paragraph(
       new Run(
        new Text(text)))); 
    } 

我知道,對於特殊字符,如製表符,你需要使用的OpenXML的TabChar類和它添加到文本項。我試圖弄清楚是否可以實現這種自動化,其中OpenXML將在文本中看到'\ t',並自動將XML設置爲支持選項卡通過。我想我可以用\ t標記字符串,但是我必須搜索每種類型的標記字符。這可以自動完成嗎?

回答

4

拆分起來上接收文字,然後添加在每個「\ t」評論後

var stringArray = text.Split(@'\t'); 

var paragraph = new Paragraph(); 

for(var i = 0;i <= stringArray.Length();i++) 
{ 
    paragraph.Append(new Run(new Text(str))); 

    if(i != stingArray.Length()) 
     paragraph.Append(new Run(new TabChar())); 
} 

m_wordprocessingDocument.MainDocumentPart.Document.Body.AppendChild(paragraph); 

編輯:事實上,他們應該被投入Run小號