Jesteśmy szczęśliwi, mogąc ogłosić wydanie GroupDocs.Conversion for Python v26.9, dostępne od września 2026. To wydanie aktualizuje podstawowy silnik GroupDocs.Conversion z wersji 26.3 do 26.8, wprowadza interfejs API ConversionEvents do monitorowania konwersji w czasie rzeczywistym, dodaje obsługę archiwów XAR, diagramów draw.io i Mermaid oraz zawiera kilka nowych opcji ładowania i konwersji. Rozwiązuje także krytyczne problemy kompatybilności w Pythonie 3.5–3.10 oraz naprawia długo istniejące wady dotyczące właściwości typu delegata i argumentów wyliczeniowych.
Co nowego w tym wydaniu
- [Feature] Dodaj obsługę
ConversionEvents, aby obserwować rozpoczęcie, postęp, zakończenie konwersji na poziomie strony i dokumentu, błędy oraz podstawianie czcionek (CONVERSIONPYTHON-93) - [Feature] Dodaj obsługę nowych formatów — archiwa XAR, diagramy draw.io oraz diagramy Mermaid (
.mmd) (CONVERSIONPYTHON-94) - [Feature] Dodaj
CadLoadOptions.layout_scope, aby ograniczyć konwersję CAD do przestrzeni modelu, układów papieru lub obu (CONVERSIONPYTHON-95) - [Feature] Dodaj
MarkdownOptions.image_saving_callback, aby kontrolować miejsce zapisu obrazów wyodrębnianych do Markdown (CONVERSIONPYTHON-96) - [Feature] Dodaj
EmailLoadOptions.page_layout_optionsorazWebLoadOptions.margin_settings/orientation_settings/size_settings(CONVERSIONPYTHON-97) - [Feature] Dodaj
ImageConvertOptions.min_resolutionicap_resolution_to_page_content(CONVERSIONPYTHON-98) - [Feature] Dodaj
WordProcessingLoadOptions.auto_detect_rtl_direction(CONVERSIONPYTHON-99) - [Feature] Dodaj
MissingDependencyExceptiondla czytelniejszego komunikatu o braku opcjonalnej zależności silnika (CONVERSIONPYTHON-100) - [Enhancement] Zaktualizuj silnik GroupDocs.Conversion z 26.3 do 26.8 (CONVERSIONPYTHON-101)
- [Enhancement] Usuń zduplikowany moduł
groupdocs.conversion.file_types— używajgroupdocs.conversion.filetypes(CONVERSIONPYTHON-102) - [Enhancement] Zmień nazwę
PdfOptions.remove_pdf_acompliancenaremove_pdf_a_compliance(CONVERSIONPYTHON-103) - [Enhancement] Dodaj sekcję „Developer Guide” oraz strony
groupdocs.conversion.integration.*do referencji API (CONVERSIONPYTHON-104) - [Fix] Nie można zaimportować modułu przy użyciu Pythona 3.5 – 3.7 (CONVERSIONPYTHON-91)
- [Fix] Błąd w czasie wykonywania przy przekazywaniu argumentu Enum w wersjach Pythona 3.8 – 3.10 (CONVERSIONPYTHON-92)
- [Fix] Indeksator
itemw*DocumentInfoiPossibleConversionsjest właściwością i nie może być wywoływany (CONVERSIONPYTHON-105) - [Fix] Właściwości typu delegata nie mogą być przypisywane z Pythona (
Object must implement IConvertible) (CONVERSIONPYTHON-106) - [Fix] Właściwości typu delegata są oznaczone niewłaściwym typem w stubach i docstringach (CONVERSIONPYTHON-107)
Zmiany w publicznym API
Nowe klasy
| Klasa | Moduł |
|---|---|
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 |
Nowe członki istniejących klas
FluentConverter.with_events(...), oraz analogicznie wIConversionFromiIConversionSettingsConverter(...)— cztery nowe przeciążenia konstruktora przyjmująceConversionEventsCadLoadOptions.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
Usunięto — groupdocs.conversion.file_types
Moduł groupdocs.conversion.file_types i jego 23 klasy zostały usunięte. Same klasy nie zostały usunięte — każda z nich nadal istnieje, niezmieniona, w groupdocs.conversion.filetypes.
Jeśli importowałeś je z tego modułu, zmień import — nic więcej nie jest potrzebne:
# przed
from groupdocs.conversion.file_types import WordProcessingFileType
# po
from groupdocs.conversion.filetypes import WordProcessingFileType
Zmieniono nazwę — PdfOptions.remove_pdf_acompliance
# przed
options.remove_pdf_acompliance = True
# po
options.remove_pdf_a_compliance = True
Nowe funkcje
Zdarzenia konwersji
ConversionEvents pozwala obserwować konwersję w trakcie jej wykonywania — postęp, zakończenie na poziomie strony i dokumentu, błędy oraz podstawianie czcionek. Dołącz zwykłe funkcje Pythona:
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())
Zauważ, że konstruktor przyjmuje (path, settings, events) — nie ma przeciążenia (path, events), więc należy przekazać ConverterSettings(), nawet jeśli nie musisz konfigurować żadnych ustawień.
Dostępne haki to on_conversion_started, on_conversion_progress, on_conversion_completed, on_document_converted, on_document_failed, on_page_converted, on_page_failed, on_compression_completed oraz on_font_substituted.
Nowe formaty
| Format | Stała typu pliku | Uwagi |
|---|---|---|
| archiwum XAR | CompressionFileType.XAR |
Dostępny także XarDocumentInfo do inspekcji |
| diagram draw.io | DiagramFileType.DRAWIO |
|
| diagram Mermaid | DiagramFileType.MMD |
Zakres układu CAD
from groupdocs.conversion.options.load import CadLayoutScope, CadLoadOptions
load_options = CadLoadOptions()
load_options.layout_scope = CadLayoutScope.MODEL # MODEL | LAYOUTS | BOTH
BOTH jest domyślnym ustawieniem i nie ogranicza konwersji.
Przykład kodu
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())
Jak uzyskać aktualizację
PyPI
pip install groupdocs-conversion-net==26.9.0
Bezpośrednie pobranie
Pobierz ze strony GroupDocs.Conversion for Python via .NET 26.9.