Как подсчитать общее количество страниц MS Word с помощью Open XML SDK? - PullRequest
0 голосов
/ 27 ноября 2018

Я использую приведенный ниже код для получения количества страниц, но он не дает фактического количества страниц (PFA).Какой лучший способ получить общее количество страниц?

var pageCount = doc.ExtendedFilePropertiesPart.Properties.Pages.Text.Trim();

Wrong page count

Actual pages are 10

Примечание. Мы не можем использовать основные сборки взаимодействия Office в моей службе веб-приложений Azure

Заранее спасибо.

1 Ответ

0 голосов
/ 27 ноября 2018

Теоретически следующее свойство может возвращать эту информацию из файла Word Open XML, используя Open XML SDK:

int pageCount = (int) document.ExtendedFilePropertiesPart.Properties.Pages.Text;

На практике, однако, это ненадежно.Это может сработать, но, опять же, может и не сработать - все зависит от 1) того, что Word удалось сохранить в файле до его закрытия, и 2) какого рода редактирование могло быть выполнено для закрытого файла.

Единственный верный способ получить номер страницы или количество страниц - это открыть документ в интерфейсе приложения Word.Количество страниц и количество страниц рассчитывается динамически, во время редактирования, Word.Когда документ закрыт, эта информация является статической и не обязательно должна быть такой, какой она будет, когда документ открыт или распечатан.

См. Также https://github.com/OfficeDev/Open-XML-SDK/issues/22 для подтверждения.

...