What’s new in this release

Key Category Summary
CONVERSIONNET-8437 Feature 新增 Drawio 檔案格式作為圖表文件的轉換目標
CONVERSIONNET-8442 Feature 新增 Mermaid MMD 檔案格式作為圖表文件的轉換來源
CONVERSIONNET-8445 Feature 新增 CAB 作為壓縮文件的轉換目標
CONVERSIONNET-8459 Feature 在 CadLoadOptions 中新增 CadLayoutScope,以轉換模型空間、紙張佈局或兩者
CONVERSIONNET-8464 Feature 新增 XAR 作為壓縮文件的轉換來源與目標
CONVERSIONNET-8460 Improvement 將每個 CAD 佈局轉換為各自的投影片、工作表、Word 頁面、HTML/MHTML 圖像與 SVG 區域
CONVERSIONNET-8461 Improvement 在 CAD 佈局選擇未匹配任何項目時,列出缺失的佈局名稱
CONVERSIONNET-8462 Improvement 將未設定的 LoadOptions.Format 報告為缺失,而非拋出例外
CONVERSIONNET-8361 Bug DOCX 形狀的輪廓在轉換為 PDF 時渲染不正確
CONVERSIONNET-8396 Bug 將簡報檔案轉換為 PDF 時導致頁首/頁腳不一致
CONVERSIONNET-8399 Bug 轉換含有損壞摘要連結的簡報檔案會導致 GroupDocsConversionException
CONVERSIONNET-8426 Bug DWG 檔案轉 PDF 時每頁紙張方向設定
CONVERSIONNET-8427 Bug 修復在沒有活動佈局的 CAD 圖紙轉換時的 NullReferenceException
CONVERSIONNET-8428 Bug 修復在 CAD 轉換中設定明確頁面大小時的雙重單位轉換問題
CONVERSIONNET-8429 Bug 修復 CAD 轉 PDF/UA 時忽略 CadLoadOptions 的問題
CONVERSIONNET-8430 Bug 修復 CadDocumentInfo 在多佈局 CAD 文件中僅報告一頁的問題
CONVERSIONNET-8444 Bug 在 Linux 環境下 GroupDocs.Conversion 的縮圖問題
CONVERSIONNET-8467 Bug EML 轉 PDF:不相容的單位類型例外

Public API changes

⚠️ Backward Incompatible Changes – 以下更新會修改現有的公開行為。請相應調整程式碼,以避免執行時錯誤。

1. LoadOptions.Format 現在在未設定時回傳 null 而不是拋出例外

受影響的類別:全部 28 種具型別的 load‑options(例如 SpreadsheetLoadOptions、PdfLoadOptions、CadLoadOptions,…)

變更內容
在取得 Format 屬性但尚未指派格式時,過去會拋出例外。現在會回傳 null,只要進行簡單的 null 檢查即可。

遷移範例

var loadOptions = new SpreadsheetLoadOptions();

if (loadOptions.Format == null)
{
    // 新的程式路徑 – 先前因 getter 拋例外而不會到達此處。
}

指引
將任何圍繞 loadOptions.Format 的 try/catch 改為 null 檢查。不要與 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)
{
    // 範例訊息:
    // "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");

// 三張紙,三張投影片 – 先前只有一張平面化投影片。
converter.Convert("drawing.pptx", new PresentationConvertOptions());

遷移範例 – 取得頁數

using var converter = new Converter("multi-layout.dwg");
int sheets = converter.GetDocumentInfo().PagesCount; // 多佈局時回傳 3

指引

  • 調整下游處理(例如 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

Advanced CAD Layout Control: 可選擇特定 CAD 佈局,將每個佈局轉換為獨立的投影片、工作表、頁面、圖像或 SVG 區域,並可使用 CadLayoutScope 於模型空間、紙張佈局或兩者同時轉換,實現精確的逐佈局輸出,且會遵循紙張的方向與頁面大小等設定。

Expanded Archive Support: 現在 XAR 與 CAB 格式皆可作為壓縮文件的來源與目標,實現這兩種封存類型之間的無縫轉換。

Modern Diagram Interoperability: Mermaid MMD 檔案可作為圖表來源,Drawio 檔案則支援作為轉換目標,讓您輕鬆將當代圖表工具整合至轉換流程。

Critical Stability Improvements: 修復了 EML → PDF、DOCX 形狀輪廓、簡報頁首/頁腳與損壞摘要連結、Linux 縮圖產生以及 DWG 紙張方向處理等轉換失敗問題,提升了電子郵件、辦公、簡報與 CAD 工作流程的可靠性。

Code example

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

// 三張紙,三張投影片 – 先前只有一張平面化投影片。
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

No direct download links are provided in the release notes.

Resources