Определите заголовок в документе MS Word, используя C # - PullRequest
6 голосов
/ 27 июля 2010

Мне нужно отдельно идентифицировать заголовки и обычные тексты в документе MS Word и поместить их в два разных столбца листа Excel.Это приложение VSTO, использующее C #.

Ответы [ 2 ]

6 голосов
/ 30 июля 2010

Вот короткая петля для части слова. Получите название стиля для абзаца и проверьте его название. Имя будет отличаться в зависимости от того, что определено в шаблоне документа.

foreach (Paragraph paragraph in this.Application.ActiveDocument.Paragraphs)
{
    Style style = paragraph.get_Style() as Style;
    string styleName = style.NameLocal;
    string text = paragraph.Range.Text;
    if( styleName == "Normal" ) // do something
    else if( styleName == "Heading 1" ) // do something
}
1 голос
/ 09 июня 2015

Таким образом вы избегаете использования локализованного имени стиля:

if(style.NameLocal == Doc.Styles[Word.WdBuiltinStyle.wdStyleHeading1].NameLocal){

}
...