There are 18 features, improvements, and bug fixes in this release. This update reinforces CAD conversion with layout‑level selection, per‑layout output (slides, worksheets, pages, SVG, etc.), and adds XAR and CAB as compression targets, as well as Mermaid MMD and Drawio as diagram sources/targets.

What’s new in this release

키 카테고리 요약
CONVERSIONNET-8437 기능 Diagram 문서에 대한 변환 대상으로 Drawio 파일 형식 추가
CONVERSIONNET-8442 기능 Diagram 문서에 대한 변환 소스로 Mermaid MMD 파일 형식 추가
CONVERSIONNET-8445 기능 압축 문서에 대한 변환 대상으로 CAB 추가
CONVERSIONNET-8459 기능 CadLoadOptions에 CadLayoutScope를 추가하여 모델 공간, 종이 레이아웃 또는 둘 다 변환
CONVERSIONNET-8464 기능 압축 문서에 대한 변환 소스 및 대상으로 XAR 추가
CONVERSIONNET-8460 개선 각 CAD 레이아웃을 개별 슬라이드, 워크시트, Word 페이지, HTML/MHTML 이미지 및 SVG 영역으로 변환
CONVERSIONNET-8461 개선 CAD 레이아웃 선택이 일치하지 않을 때 누락된 레이아웃 이름 지정
CONVERSIONNET-8462 개선 설정되지 않은 LoadOptions.Format을 예외를 발생시키는 대신 존재하지 않음으로 보고
CONVERSIONNET-8361 버그 DOCX 도형의 외곽선이 PDF로 변환할 때 잘못 렌더링됨
CONVERSIONNET-8396 버그 Presentation 파일을 PDF로 변환할 때 헤더/푸터가 일관되지 않음
CONVERSIONNET-8399 버그 손상된 요약 링크가 있는 Presentation 파일을 변환하면 GroupDocsConversionException 발생
CONVERSIONNET-8426 버그 DWG 파일을 PDF로 변환할 때 페이지 시트 방향 설정 적용
CONVERSIONNET-8427 버그 활성 레이아웃이 없는 CAD 도면 변환 시 NullReferenceException 수정
CONVERSIONNET-8428 버그 CAD 변환 시 명시적인 페이지 크기를 설정하면 발생하는 이중 단위 변환 오류 수정
CONVERSIONNET-8429 버그 CAD를 PDF/UA로 변환할 때 CadLoadOptions 무시 문제 수정
CONVERSIONNET-8430 버그 다중 레이아웃 CAD 문서에서 CadDocumentInfo가 한 페이지만 보고하는 문제 수정
CONVERSIONNET-8444 버그 Linux 환경에서 GroupDocs.Conversion의 썸네일 문제
CONVERSIONNET-8467 버그 EML을 PDF로 변환 시 호환되지 않는 단위 유형 예외

Public API changes

⚠️ 역방향 호환성 깨지는 변경 – 다음 업데이트는 기존 공개 동작을 수정합니다. 런타임 오류를 방지하려면 코드를 적절히 조정하십시오.

1. LoadOptions.Format이 포맷이 설정되지 않았을 때 예외를 발생시키는 대신 null을 반환합니다

영향을 받는 클래스: all 28 typed load‑options (e.g., SpreadsheetLoadOptions, PdfLoadOptions, CadLoadOptions, …)

변경 사항
포맷이 할당되기 전에 Format 속성을 읽으면 예외가 발생했습니다. 이제 null을 반환하므로 간단한 null‑check가 가능합니다.

마이그레이션 예시

var loadOptions = new SpreadsheetLoadOptions();

if (loadOptions.Format == null)
{
    // New code path – previously unreachable because the getter threw.
}

가이드
loadOptions.Format 주변의 try/catch를 null‑check로 교체하십시오. FileType.Unknown과 비교하지 마세요; 올바른 테스트는 == null입니다.


2. CadLoadOptions.LayoutNames에 대한 정확히 일치하는 검증 및 상세 오류 보고

영향을 받는 클래스: CadLoadOptions

변경 사항
LayoutNames는 이제 도면의 레이아웃 이름과 정확히(대소문자 구분) 일치하도록 매칭됩니다. 일치하는 것이 없으면 사용 가능한 레이아웃과 일치하지 않은 요청을 나열하는 InvalidLoadOptionsException과 함께 변환이 실패합니다.

마이그레이션 예시

using GroupDocs.Conversion.Exceptions;

try
{
    using var converter = new Converter("drawing.dwg",
        ctx => new CadLoadOptions { LayoutNames = new[] { "layout1" } });
    converter.Convert("out.pdf", new PdfConvertOptions());
}
catch (InvalidLoadOptionsException ex)
{
    // Example message:
    // "No layout name in CadLoadOptions.LayoutNames matches this drawing, which carries
    //  Model, Layout1, Layout2. Requested: layout1. Names are matched exactly, so a name
    //  that differs only in case is a different name."
    Console.WriteLine(ex.Message);
}

가이드

  • 레이아웃 이름이 정확히 철자되고 소스 도면에서 사용된 대소문자와 일치하는지 확인하십시오.
  • 일부 레이아웃만 필요할 경우 정확한 이름을 제공하십시오; 일치하지 않는 항목은 무시되고 일치하는 레이아웃은 계속 렌더링됩니다.

3. 다중 시트 CAD 도면이 이제 시트당 하나의 출력 단위를 생성합니다

영향을 받는 클래스: Converter, PresentationConvertOptions, PdfConvertOptions

변경 사항
이전에는 다중 종이‑공간 레이아웃을 가진 도면을 변환하면 단일 평면화된 이미지/슬라이드가 생성되었습니다. 이제 변환은 각 레이아웃에 대해 별도의 출력 단위(슬라이드, 페이지 등)를 레이아웃의 페이지 설정에 따라 크기로 생성합니다. Converter.GetDocumentInfo().PagesCount는 생성된 단위 수를 나타냅니다.

마이그레이션 예시 – 변환

using var converter = new Converter("multi-layout.dwg");

// Three sheets in, three slides out – previously one flattened slide.
converter.Convert("drawing.pptx", new PresentationConvertOptions());

마이그레이션 예시 – 페이지 수 조회

using var converter = new Converter("multi-layout.dwg");
int sheets = converter.GetDocumentInfo().PagesCount; // Returns 3 for three layouts

가이드

  • 다중 출력 파일/페이지를 처리하도록 하위 처리(예: UI 페이지네이션, 파일 명명)를 조정하십시오.
  • 단일 시트 도면의 경우 동작은 변하지 않습니다.
  • 예외는 CAD → PDF/UA‑1이며, 여전히 단일 태그 페이지를 렌더링합니다.

4. 변환할 공간을 명시적으로 제어하는 새로운 CadLoadOptions.LayoutScope 속성

영향을 받는 클래스: CadLoadOptions

변경 사항
LayoutScope를 사용하면 Model, Layouts, 또는 Both(기본) 중 어떤 것을 로드할지 지정할 수 있습니다.

  • LayoutNames가 설정된 경우, 명시적인 이름이 우선이므로 LayoutScope는 무시됩니다.
  • 최소 하나의 시트를 포함하는 도면에서 시트를 생성하지 않는 범위를 선택하면, 이제 기본 공간을 조용히 렌더링하는 대신 InvalidLoadOptionsException이 발생합니다.

마이그레이션 예시 – 종이‑공간 레이아웃만 변환

using GroupDocs.Conversion;
using GroupDocs.Conversion.Options.Convert;
using GroupDocs.Conversion.Options.Load;

using var converter = new Converter("drawing.dwg",
    ctx => new CadLoadOptions { LayoutScope = CadLayoutScope.Layouts });
converter.Convert("layouts.pdf", new PdfConvertOptions());

가이드

  • 암시적 백엔드 선택에 의존하던 기존 코드는 Both가 기본값으로 유지되므로 계속 작동합니다.
  • 모델 공간을 제외하거나 포함하려면 LayoutScope를 각각 CadLayoutScope.Model 또는 CadLayoutScope.Layouts로 설정하십시오.
  • 이전에 빈 LayoutNames 배열을 제공하여 레이아웃을 필터링하려 했다면, 시트가 선택되지 않을 때 명확한 오류를 얻기 위해 적절한 LayoutScope 값으로 교체하십시오.

New features

고급 CAD 레이아웃 제어: 특정 CAD 레이아웃을 선택하고 각 레이아웃을 개별 슬라이드, 워크시트, 페이지, 이미지 또는 SVG 영역으로 변환하며, CadLayoutScope를 사용해 모델 공간, 종이 레이아웃 또는 둘 다 선택합니다. 이를 통해 레이아웃별 정확한 출력이 제공되고 방향 및 페이지 크기와 같은 시트별 설정을 존중합니다.

확장된 아카이브 지원: XAR 및 CAB 형식이 이제 압축 문서의 소스와 대상 모두로 사용 가능해져 이러한 아카이브 유형 간의 원활한 변환이 가능합니다.

현대적인 다이어그램 상호 운용성: Mermaid MMD 파일을 다이어그램 소스로 사용할 수 있으며, Drawio 파일이 변환 대상으로 지원되어 최신 다이어그램 도구를 변환 파이프라인에 쉽게 통합할 수 있습니다.

핵심 안정성 개선: EML → PDF, DOCX 도형 외곽선, 프레젠테이션 헤더/푸터 및 손상된 요약 링크, Linux 썸네일 생성, DWG 시트‑방향 처리와 관련된 변환 실패를 수정했습니다. 이러한 수정으로 이메일, 오피스, 프레젠테이션 및 CAD 워크플로 전반의 신뢰성이 향상됩니다.

Code example

using var converter = new Converter("multi-layout.dwg");

// Three sheets in, three slides out – previously one flattened slide.
converter.Convert("drawing.pptx", new PresentationConvertOptions());

How to get the update

NuGet

Install-Package GroupDocs.Conversion -Version 26.8

GroupDocs.Conversion 26.8 on NuGet

Direct download

릴리스 노트에 직접 다운로드 링크가 제공되지 않습니다.

Resources