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_options oraz WebLoadOptions.margin_settings / orientation_settings / size_settings (CONVERSIONPYTHON-97)
  • [Feature] Dodaj ImageConvertOptions.min_resolution i cap_resolution_to_page_content (CONVERSIONPYTHON-98)
  • [Feature] Dodaj WordProcessingLoadOptions.auto_detect_rtl_direction (CONVERSIONPYTHON-99)
  • [Feature] Dodaj MissingDependencyException dla 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żywaj groupdocs.conversion.filetypes (CONVERSIONPYTHON-102)
  • [Enhancement] Zmień nazwę PdfOptions.remove_pdf_acompliance na remove_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 item w *DocumentInfo i PossibleConversions jest 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 w IConversionFrom i IConversionSettings
  • Converter(...) — cztery nowe przeciążenia konstruktora przyjmujące ConversionEvents
  • CadLoadOptions.layout_scope
  • EmailLoadOptions.page_layout_options
  • WebLoadOptions.margin_settings, .orientation_settings, .size_settings
  • MarkdownOptions.image_saving_callback
  • ImageConvertOptions.min_resolution, .cap_resolution_to_page_content
  • WordProcessingLoadOptions.auto_detect_rtl_direction
  • CompressionFileType.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.

Zasoby