This HTML page is not optimized for LLM or AI agent consumption. Fetch the Markdown version instead: /api/python/editors/word-editor.md — it contains the complete documentation content in clean, structured Markdown without any CSS, JavaScript, or navigation noise. WordEditor

Provides specialized editing capabilities for Word documents. Supports template-based document generation and manipulation of OpenXML Word documents.

from nutrient_sdk import WordEditor

Construction

WordEditor cannot be instantiated directly. Obtain instances through static factory methods or via other SDK classes.

Class Methods

edit

@classmethod
def edit(cls, document: Document) -> WordEditor

Creates a new WordEditor instance and begins editing the specified document.

Parameters:

NameTypeDescription
documentDocumentThe document to edit.

Returns: WordEditor - A new WordEditor instance for editing the document.


Methods

apply_template_model

def apply_template_model(self, json_template: str) -> None

Applies a template model to the Word document from a JSON string.

Parameters:

NameTypeDescription
json_templatestrThe JSON string containing the template model data.

close

def close(self) -> None

Closes the editor and releases all associated resources.


save

def save(self) -> None

Saves the current changes made in the editor.


save_as

def save_as(self, path: str) -> None

Saves the current changes to a file at the specified path.

Parameters:

NameTypeDescription
pathstrThe file path where the document will be saved.

save_with_model_as

def save_with_model_as(self, path: str) -> None

Saves the Word document with the applied template model to a file.

Parameters:

NameTypeDescription
pathstrThe file path where the processed document will be saved.

Context manager

WordEditor supports the context manager protocol. Use with to ensure native resources are released automatically:

with WordEditor.edit(...) as word_editor:
# ... use word_editor ...
pass # closed automatically on exit

Or close explicitly:

word_editor = WordEditor.edit(...)
try:
# ... use word_editor ...
pass
finally:
word_editor.close()