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

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

from nutrient_sdk import PresentationEditor

Construction

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

Class Methods

edit

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

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

Parameters:

NameTypeDescription
documentDocumentThe document to edit.

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


Methods

apply_template_model

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

Applies a template model to the presentation 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 presentation document with the applied template model to a file.

Parameters:

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

Context manager

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

with PresentationEditor.edit(...) as presentation_editor:
# ... use presentation_editor ...
pass # closed automatically on exit

Or close explicitly:

presentation_editor = PresentationEditor.edit(...)
try:
# ... use presentation_editor ...
pass
finally:
presentation_editor.close()