Как найти номер строки с помощью Word API? - PullRequest
0 голосов
/ 26 июня 2018

Я хочу узнать номер строки в документе Word из Word.Paragraph или Word.Range, но подходящих полей и методов нет. Я использую C #.

1 Ответ

0 голосов
/ 26 июня 2018

Чтобы получить номер строки, необходимо использовать старую часть объектной модели Word, основанную на днях Word Basic: свойство Information. Поскольку C # не «любит» свойства с аргументами, это метод get_Information для C #

int lineNumberSelection = WordApp.Selection.get_Information(Word.WdInformation.wdFirstCharacterLineNumber);
int lineNumberRange = myParagraph.Range.get_Information(Word.WdInformation.wdFirstCharacterLineNumber);

Возвращает нумерацию, установленную в документе - это «То, что вы видите, это то, что вы получаете». Так что если нумерация настроена на перезапуск на каждой странице или для каждого раздела или каждой страницы - это возвращаемый результат.

Если требуется другой результат, правило нумерации для документа должно быть изменено (и может быть изменено снова, после). Например:

wdDocument.PageSetup.LineNumbering.RestartMode = Word.Wdnumberingrule.wdRestartContinuous;
...