Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
Как правило, поле, вставленное в Microsoft Word, уже содержит актуальное значение. Например, если поле представляет собой формулу или номер страницы, оно будет содержать правильное вычисленное значение для данной версии документа. Но если у вас есть приложение, которое генерирует или изменяет документ с полями, например, объединяет два документа или заполняет его данными, то в идеале все поля должны быть обновлены, чтобы документ был полезным.
Когда документ загружен, Aspose.Words имитирует поведение Microsoft Word, при этом опция автоматического обновления полей отключена. Поведение можно резюмировать следующим образом:
Чтобы явно обновить поля во всем документе, просто вызовите update_fields. Чтобы обновить поля, содержащиеся в части документа, получите объект Range и вызовите метод update_fields. В Aspose.Words вы можете получить значение Range для любого узла в дереве документа, например Section, HeaderFooter, Paragraph, и т.д., используя свойство Node.range. Вы можете обновить результат для отдельного поля, вызвав метод update.
Когда вы выполняете преобразование документа в формат фиксированной страницы, например, в PDF или XPS, в Aspose.Words автоматически обновляются поля PAGE, PAGEREF, относящиеся к макету страницы, которые находятся в верхних и нижних колонтитулах документа. Это поведение имитирует поведение Microsoft Word при печати документа.
Если вы хотите обновить все остальные поля в документе, то вам нужно вызвать update_fields перед отображением документа.
В следующем примере кода показано, как обновить все поля перед отрисовкой документа:
Когда вы выполняете команду mail merge, все поля в документе будут автоматически обновлены. Это связано с тем, что Mail Merge - это случай обновления поля. Программа обнаруживает поле Mail Merge и должна обновить свой результат, что включает в себя получение значения из источника данных и вставку его в поле. Логика, конечно, более сложная, например, когда достигнут конец области документа/mail merge, но есть еще дополнительные данные, которые необходимо объединить, тогда область необходимо продублировать и обновить новый набор полей.
W:dirty - это атрибут уровня поля, который обновляет только указанное вами поле при открытии документа. Он указывает MS Word обновлять только это поле при следующем открытии документа. Вы можете использовать свойство update_dirty_fields, чтобы указать, следует ли обновлять поля с атрибутом dirty. Если для значения update_dirty_fields установлено значение True, все поля, имеющие значение True для свойства Field.is_dirty или FieldChar.is_dirty, обновляются при загрузке документа.
В следующем примере кода показано, как обновить поля, имеющие атрибут dirty:
Вы можете использовать свойство SaveOptions.update_last_saved_time_property для обновления соответствующего встроенного свойства документа last_saved_time при сохранении документа.
В следующем примере кода показано, как обновить это свойство:
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.