저희는 GroupDocs.Conversion for Python v26.9의 릴리스를 기쁘게 발표합니다. 이 릴리스는 2026년 9월부터 사용할 수 있습니다. 이번 릴리스에서는 기본 GroupDocs.Conversion 엔진을 26.3에서 26.8로 업그레이드하고, 실시간 변환 모니터링을 위한 ConversionEvents API를 도입했으며, XAR 아카이브, draw.io 및 Mermaid 다이어그램 지원을 추가하고, 여러 새로운 로드 및 변환 옵션을 포함합니다. 또한 Python 3.5–3.10에서의 중요한 호환성 문제를 해결하고, delegate 형식 속성과 enum 인수와 관련된 오래된 결함을 수정했습니다.
이번 릴리스의 새로운 내용
- [Feature]
ConversionEvents지원 추가: 시작, 진행 상황, 페이지별 및 문서별 완료, 실패 및 글꼴 대체를 관찰 (CONVERSIONPYTHON-93) - [Feature] 새로운 포맷 지원 추가 — XAR 아카이브, draw.io 다이어그램 및 Mermaid (
.mmd) 다이어그램 (CONVERSIONPYTHON-94) - [Feature] CAD 변환을 모델 공간, 종이 공간 레이아웃 또는 둘 다로 제한하기 위해
CadLoadOptions.layout_scope추가 (CONVERSIONPYTHON-95) - [Feature] Markdown으로 추출된 이미지가 저장되는 위치를 제어하기 위해
MarkdownOptions.image_saving_callback추가 (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] 개발자 가이드 섹션 및 API 레퍼런스에
groupdocs.conversion.integration.*페이지 추가 (CONVERSIONPYTHON-104) - [Fix] Python 3.5 – 3.7 사용 시 모듈을 가져올 수 없음 (CONVERSIONPYTHON-91)
- [Fix] Python 3.8 – 3.10 버전에서 Enum 인수를 전달할 때 런타임 오류 (CONVERSIONPYTHON-92)
- [Fix]
*DocumentInfo및PossibleConversions의 인덱서item이 속성이라 호출할 수 없음 (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와IConversionSettings에서도 동일하게 사용Converter(...)—ConversionEvents를 받는 네 가지 새로운 생성자 오버로드CadLoadOptions.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에 변경 없이 존재합니다.
그 모듈에서 import했었다면, import 구문만 변경하세요 — 다른 것은 바꾸지 않아도 됩니다:
# 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는 변환이 진행되는 동안 진행 상황, 페이지별 및 문서별 완료, 실패 및 글꼴 대체를 관찰할 수 있게 해줍니다. 일반 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 archive | CompressionFileType.XAR |
Also XarDocumentInfo for inspection |
| draw.io diagram | DiagramFileType.DRAWIO |
|
| Mermaid diagram | 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 페이지에서 다운로드하십시오.