Ми раді оголосити про випуск GroupDocs.Conversion for Python v26.9, доступний з вересня 2026. Це оновлення оновлює базовий движок GroupDocs.Conversion з 26.3 до 26.8, вводить API ConversionEvents для моніторингу конвертації в реальному часі, додає підтримку архівів XAR, діаграм draw.io та Mermaid, а також включає кілька нових параметрів завантаження та конвертації. Крім того, виправлені критичні проблеми сумісності у Python 3.5–3.10 та довготривалі дефекти, що стосуються властивостей типу delegate та аргументів enum.
Що нового у цьому випуску
- [Feature] Додана підтримка
ConversionEventsдля спостереження за запуском, прогресом, завершенням per‑page та per‑document, помилками та заміною шрифтів (CONVERSIONPYTHON-93) - [Feature] Додана підтримка нових форматів — архіви XAR, діаграми draw.io та Mermaid (
.mmd) (CONVERSIONPYTHON-94) - [Feature] Додано
CadLoadOptions.layout_scopeдля обмеження конвертації CAD простором моделі, простором аркушів або обома (CONVERSIONPYTHON-95) - [Feature] Додано
MarkdownOptions.image_saving_callbackдля керування місцем збереження зображень, витягнутих у Markdown (CONVERSIONPYTHON-96) - [Feature] Додано
EmailLoadOptions.page_layout_optionsтаWebLoadOptions.margin_settings/orientation_settings/size_settings(CONVERSIONPYTHON-97) - [Feature] Додано
ImageConvertOptions.min_resolutionіcap_resolution_to_page_content(CONVERSIONPYTHON-98) - [Feature] Додано
WordProcessingLoadOptions.auto_detect_rtl_direction(CONVERSIONPYTHON-99) - [Feature] Додано
MissingDependencyExceptionдля більш зрозумілого повідомлення про відсутність необов’язкової залежності движка (CONVERSIONPYTHON-100) - [Enhancement] Оновлено движок GroupDocs.Conversion з 26.3 до 26.8 (CONVERSIONPYTHON-101)
- [Enhancement] Видалено дубльований модуль
groupdocs.conversion.file_types— використовуйтеgroupdocs.conversion.filetypes(CONVERSIONPYTHON-102) - [Enhancement] Перейменовано
PdfOptions.remove_pdf_acomplianceнаremove_pdf_a_compliance(CONVERSIONPYTHON-103) - [Enhancement] Додано розділ «Developer Guide» та сторінки
groupdocs.conversion.integration.*до довідки API (CONVERSIONPYTHON-104) - [Fix] Неможливість імпорту модуля у Python 3.5–3.7 (CONVERSIONPYTHON-91)
- [Fix] Помилка виконання при передачі аргументу Enum у Python 3.8–3.10 (CONVERSIONPYTHON-92)
- [Fix] Індексатор
itemу*DocumentInfoтаPossibleConversionsє властивістю і не може бути викликаний (CONVERSIONPYTHON-105) - [Fix] Властивості типу delegate не можна призначати з Python (
Object must implement IConvertible) (CONVERSIONPYTHON-106) - [Fix] Властивості типу delegate анотовані неправильним типом у заглушках та docstring‑ах (CONVERSIONPYTHON-107)
Зміни у публічному API
Нові класи
| Клас | Модуль |
|---|---|
ConversionEvents |
groupdocs.conversion |
FontSubstitutionContext |
groupdocs.conversion.contracts |
XarDocumentInfo |
groupdocs.conversion.contracts |
MissingDependencyException |
groupdocs.conversion.exceptions |
CadLayoutScope |
groupdocs.conversion.options.load |
IPageLayoutOptions |
groupdocs.conversion.options.load |
MarkdownImageSavingArgs, IMarkdownImageSavingCallback |
groupdocs.conversion.options.convert |
IConversionHandlersStage, IConversionByPageHandlersStage |
groupdocs.conversion.fluent |
Нові члени існуючих класів
FluentConverter.with_events(...), а також аналогічний метод уIConversionFromтаIConversionSettingsConverter(...)— чотири нових перевантаження конструктора, що приймаютьConversionEventsCadLoadOptions.layout_scopeEmailLoadOptions.page_layout_optionsWebLoadOptions.margin_settings,.orientation_settings,.size_settingsMarkdownOptions.image_saving_callbackImageConvertOptions.min_resolution,.cap_resolution_to_page_contentWordProcessingLoadOptions.auto_detect_rtl_directionCompressionFileType.XAR,DiagramFileType.DRAWIO,DiagramFileType.MMD
Видалено — groupdocs.conversion.file_types
Модуль groupdocs.conversion.file_types і його 23 класи більше не існують. Самі класи залишаються — кожен з них досі доступний, без змін, у groupdocs.conversion.filetypes.
Якщо ви імпортували їх звідти, змініть імпорт — нічого більше не потрібно:
# before
from groupdocs.conversion.file_types import WordProcessingFileType
# after
from groupdocs.conversion.filetypes import WordProcessingFileType
Перейменовано — PdfOptions.remove_pdf_acompliance
# before
options.remove_pdf_acompliance = True
# after
options.remove_pdf_a_compliance = True
Нові можливості
Події конвертації
ConversionEvents дозволяє спостерігати за процесом конвертації в режимі реального часу — прогрес, завершення per‑page та per‑document, помилки та заміну шрифтів. Прикріплюйте звичайні функції Python:
from groupdocs.conversion import ConversionEvents, Converter, ConverterSettings
from groupdocs.conversion.options.convert import PdfConvertOptions
events = ConversionEvents()
events.on_conversion_started = lambda: print("started")
events.on_conversion_progress = lambda percent: print(f"{percent}%")
events.on_document_converted = lambda ctx: print("document done")
events.on_font_substituted = lambda ctx: print(
f"{ctx.original_font_name} -> {ctx.substitute_font_name} ({ctx.reason})")
events.on_conversion_completed = lambda: print("completed")
with Converter("business-plan.docx", ConverterSettings(), events) as converter:
converter.convert("business-plan.pdf", PdfConvertOptions())
Зверніть увагу, конструктор приймає (path, settings, events) — перевантаження (path, events) немає, тому передавайте ConverterSettings(), навіть якщо нічого налаштовувати не потрібно.
Доступні хуки: on_conversion_started, on_conversion_progress, on_conversion_completed, on_document_converted, on_document_failed, on_page_converted, on_page_failed, on_compression_completed та on_font_substituted.
Нові формати
| Формат | Константа типу файлу | Примітки |
|---|---|---|
| Архів XAR | CompressionFileType.XAR |
Також XarDocumentInfo для інспекції |
| Діаграма draw.io | DiagramFileType.DRAWIO |
|
| Діаграма Mermaid | DiagramFileType.MMD |
Область розкладки CAD
from groupdocs.conversion.options.load import CadLayoutScope, CadLoadOptions
load_options = CadLoadOptions()
load_options.layout_scope = CadLayoutScope.MODEL # MODEL | LAYOUTS | BOTH
BOTH є значенням за замовчуванням і не обмежує конвертацію.
Приклад коду
from groupdocs.conversion import ConversionEvents, Converter, ConverterSettings
from groupdocs.conversion.options.convert import PdfConvertOptions
events = ConversionEvents()
events.on_conversion_started = lambda: print("started")
events.on_conversion_progress = lambda percent: print(f"{percent}%")
events.on_document_converted = lambda ctx: print("document done")
events.on_font_substituted = lambda ctx: print(
f"{ctx.original_font_name} -> {ctx.substitute_font_name} ({ctx.reason})")
events.on_conversion_completed = lambda: print("completed")
with Converter("business-plan.docx", ConverterSettings(), events) as converter:
converter.convert("business-plan.pdf", PdfConvertOptions())
Як отримати оновлення
PyPI
pip install groupdocs-conversion-net==26.9.0
Пряме завантаження
Завантажте з сторінки GroupDocs.Conversion for Python via .NET 26.9.