Estamos felices de anunciar el lanzamiento de GroupDocs.Editor for Python v26.5, disponible a partir de ** mayo de 2026**. Esta es la primera publicación pública de GroupDocs.Editor for Python a través de .NET, distribuida como una rueda de Python autocontenida en PyPI. Lleva las capacidades completas de edición de documentos de la biblioteca .NET subyacente a Python: cargar un documento, convertirlo a HTML/CSS limpio y editable, editar ese marcado programáticamente o en cualquier editor WYSIWYG, y luego guardarlo de nuevo en el formato original — o convertirlo a otro — con un solo pip install y sin necesidad de MS Office, OpenOffice o un runtime .NET separado.

Qué hay de nuevo en esta versión

  • [New feature] Edición de ida y vuelta en HTML (EDTPY-1)
  • [New feature] Superficie de API Pythonic con convenciones de nombres auto‑mapeadas (EDTPY-2)
  • [New feature] Soporte multiformato para procesamiento de texto, hojas de cálculo, presentaciones, PDF, correo electrónico, eBooks y formatos de texto/marcado (EDTPY-3)
  • [New feature] Conversión de formato mediante HTML intermedio (EDTPY-4)
  • [New feature] Edición granular (hoja de cálculo/diapositiva/rango de páginas) con paginación y conmutación de metadatos de idioma (EDTPY-5)
  • [New feature] Extracción de recursos (imágenes, fuentes, CSS, audio) y persistencia en carpeta (EDTPY-6)
  • [New feature] Introspección de documentos mediante get_document_info() (EDTPY-7)
  • [New feature] Inspección y actualización de campos de formulario mediante editor.form_field_manager (EDTPY-8)
  • [New feature] Carga desde stream y protocolo de gestor de contexto para disposición determinista (EDTPY-9)
  • [New feature] AI Agent & LLM Friendly: AGENTS.md incluido, servidor MCP y documentación legible por máquinas (EDTPY-10)

Cambios en la API pública

Toda la API .NET se expone mediante nombres nativos de Python. Las clases usan PascalCase, los métodos y propiedades usan snake_case (auto‑mapeados a los PascalCase subyacentes de .NET), y los valores de enumeración usan UPPER_SNAKE_CASE.

Clases

  • Editor — punto de entrada; abrir por ruta o stream, edit(), save(), get_document_info(), form_field_manager
  • EditableDocument — representación HTML/CSS; get_content(), get_body_content(), get_embedded_html(), get_css_content(), save(), colecciones de recursos (images, fonts, css, audio, all_resources), y los fábricas from_markup() / from_markup_and_resource_folder() / from_file()
  • FormFieldManager — leer y actualizar campos de formulario de procesamiento de texto
  • License, Metered — API de licenciamiento

Opciones

  • Load: WordProcessingLoadOptions, SpreadsheetLoadOptions, PresentationLoadOptions, PdfLoadOptions
  • Edit: WordProcessingEditOptions, SpreadsheetEditOptions, PresentationEditOptions, PdfEditOptions, EbookEditOptions, EmailEditOptions, MarkdownEditOptions, TextEditOptions, XmlEditOptions, DelimitedTextEditOptions
  • Save: WordProcessingSaveOptions, SpreadsheetSaveOptions, PresentationSaveOptions, PdfSaveOptions, HtmlSaveOptions, MhtmlSaveOptions, MarkdownSaveOptions, XpsSaveOptions, TextSaveOptions, EbookSaveOptions, EmailSaveOptions, DelimitedTextSaveOptions

Enumeraciones

  • WordProcessingFormats, SpreadsheetFormats, PresentationFormats, FixedLayoutFormats, EBookFormats, EmailFormats, TextualFormats, FontExtractionOptions, FontEmbeddingOptions

Excepciones

  • PasswordRequiredException, IncorrectPasswordException, EncryptedException, InvalidFormatException

Nuevas funcionalidades

Edición de ida y vuelta en HTML

Convierte cualquier documento compatible a HTML/CSS editable y guárdalo de nuevo en su formato original sin perder fidelidad — el flujo de trabajo central de GroupDocs.Editor. El HTML puede editarse programáticamente o en cualquier editor WYSIWYG de terceros como CKEditor o TinyMCE.

Superficie de API Pythonic

Toda la API .NET se expone mediante nombres nativos de Python. Las clases usan PascalCase, los métodos y propiedades usan snake_case (auto‑mapeados a los PascalCase subyacentes de .NET), y los valores de enumeración usan UPPER_SNAKE_CASE.

Soporte multiformato

Una API unificada para procesamiento de texto, hojas de cálculo, presentaciones, PDF, correo electrónico, eBooks y formatos de texto/marcado.

Conversión de formato mediante HTML

No hay una llamada “convertir” separada — al guardar un EditableDocument con diferentes *SaveOptions se convierte a través del HTML intermedio. Mismo input, salida distinta.

Edición granular

Edita una sola hoja de cálculo de un libro, una sola diapositiva de una presentación o un rango de páginas — y alterna la paginación y los metadatos de idioma.

Extracción de recursos

Un EditableDocument expone sus imágenes, fuentes, CSS y audio extraídos como colecciones iterables, y puede persistir el HTML junto con todos los recursos en una carpeta.

Introspección de documentos

Lee el formato, número de páginas, tamaño y estado de cifrado sin necesidad de una pasada completa de edición.

Campos de formulario

Inspecciona y actualiza campos de formulario de procesamiento de texto a través de editor.form_field_manager.

Streams y gestores de contexto

Carga desde cualquier stream binario y confía en el protocolo de gestor de contexto para la disposición determinista de los manejadores nativos del documento.

AI Agent & LLM Friendly

  • AGENTS.md incluido dentro de la rueda instalada — Claude Code, Cursor y GitHub Copilot descubren automáticamente la superficie de la API, patrones de uso y pistas de solución de problemas.
  • Servidor MCP — apunta tu herramienta de IA a https://docs.groupdocs.com/mcp para consultas de documentación bajo demanda.
  • Documentación legible por máquinas en https://docs.groupdocs.com/editor/python-net/llms-full.txt para RAG y contexto LLM.

Ejemplo de código

from groupdocs.editor import Editor, EditableDocument
from groupdocs.editor.formats import WordProcessingFormats
from groupdocs.editor.options import WordProcessingSaveOptions

with Editor("document.docx") as editor:
    editable = editor.edit()                       # documento -> HTML editable
    html = editable.get_embedded_html()
    edited = EditableDocument.from_markup(html.replace("Hello", "Goodbye"))
    editor.save(edited, "document.docx", WordProcessingSaveOptions(WordProcessingFormats.DOCX))

Cómo obtener la actualización

PyPI

Instala o actualiza mediante:

pip install groupdocs-editor-net

Descarga directa

Descarga la rueda desde la página GroupDocs.Editor for Python via .NET 26.5.

Recursos