我們很高興宣布 GroupDocs.Conversion for .NET 25.10,於 2025 年 10 月 正式發佈。
此次次要更新帶來了一系列頁面版面增強功能、新的載入選項能力,以及若干關鍵錯誤修復。最顯著的變化是 公共 API 重構,將邊距與尺寸設定集中到專屬物件中,提升所有轉換選項的一致性。

本次發佈的新功能

ID 功能
CONVERSIONNET‑8032 EmailLoadOptions 轉換前,新增支援設定 頁面尺寸、邊距與方向
CONVERSIONNET‑8013 SpreadsheetOptions 轉換前,新增支援設定 頁面邊距
CONVERSIONNET‑8012 SpreadsheetOptions 轉換前,新增支援設定 頁面尺寸
CONVERSIONNET‑8009 TxtLoadOptionsWordProcessingLoadOptions 轉換前,新增支援設定 頁面尺寸
CONVERSIONNET‑8008 TxtLoadOptionsWordProcessingLoadOptions 轉換前,新增支援設定 頁面邊距

這些功能讓您能在 轉換步驟之前 微調來源文件的版面,從而更精確地控制最終檔案的外觀。

API 重構 – 頁面版面設定 (不相容變更)

⚠️ 不相容變更(自 v26.1 起生效) – 二十個單一的邊距/尺寸屬性已 棄用,將在下一個大版本中移除。
新模型引入兩個輔助物件以取代舊的純量屬性:

受影響類別 已棄用屬性 替代方案
PdfConvertOptions (7) MarginTopMarginBottomMarginLeftMarginRightMarginSettingsPageSizePageWidthPageHeightSizeSettings MarginSettingsPageMarginOptions)、SizeSettingsPageSizeOptions
WordProcessingConvertOptions (7) 同 PDF 同 PDF
EBookConvertOptions (3) PageSizePageWidthPageHeightSizeSettings SizeSettings
CadConvertOptions (3) PageSizePageWidthPageHeightSizeSettings SizeSettings

新的輔助類別

public class PageMarginOptions
{
    public float? Top { get; set; }
    public float? Bottom { get; set; }
    public float? Left { get; set; }
    public float? Right { get; set; }
}
public sealed class PageSizeOptions
{
    public PageSize PageSize { get; set; }
    public float PageWidth { get; set; }   // 設定此屬性會強制 PageSize = PageSize.Custom
    public float PageHeight { get; set; }  // 設定此屬性會強制 PageSize = PageSize.Custom
}

遷移指南

遷移頁面邊距

舊寫法(已棄用)

var options = new PdfConvertOptions
{
    MarginTop    = 10,
    MarginBottom = 10,
    MarginLeft   = 20,
    MarginRight  = 20
};

新寫法(建議)

var options = new PdfConvertOptions
{
    MarginSettings = new PageMarginOptions
    {
        Top    = 10,
        Bottom = 10,
        Left   = 20,
        Right  = 20
    }
};

遷移頁面尺寸設定

舊寫法(已棄用)

// 預設尺寸
var pdfOptions = new PdfConvertOptions
{
    PageSize = PageSize.A4
};

// 客製化尺寸
var wpOptions = new WordProcessingConvertOptions
{
    PageWidth  = 612, // 點(Letter 寬度)
    PageHeight = 792  // 點(Letter 高度)
};

新寫法(建議)

// 預設尺寸
var pdfOptions = new PdfConvertOptions
{
    SizeSettings = new PageSizeOptions
    {
        PageSize = PageSize.A4
    }
};

// 客製化尺寸
var wpOptions = new WordProcessingConvertOptions
{
    SizeSettings = new PageSizeOptions
    {
        PageWidth  = 612,   // 點
        PageHeight = 792    // 點
        // PageSize 會自動變為 PageSize.Custom
    }
};

採用新物件可消除歧義(舊 API 同時混用點與像素),並將所有轉換選項統一於可發現的模型之下。

修復與增強

ID 問題類型 描述
CONVERSIONNET‑8031 錯誤 在 .NET 上 PreserveOriginalDate 設為 false 時先前被忽略。
CONVERSIONNET‑8023 錯誤 當未提供明確的轉換選項時,流暢語法的轉換會失敗。
CONVERSIONNET‑8020 錯誤 WordProcessing 轉換因缺少 Microsoft.Extensions.DependencyInjection(v8.0.0.0)而拋出未處理例外。
CONVERSIONNET‑8006 錯誤 WordProcessingConvertOptionsPageWidth/PageHeight 被當作像素而非點。
CONVERSIONNET‑8005 錯誤 PdfConvertOptions.Margin* 屬性在 PDF 轉換過程中未被遵守。

這些修復提升了最常見轉換情境的可靠性,並使函式庫更加符合 .NET 的預期行為。

如何取得更新

  • NuGet – 升級至最新的 GroupDocs.Conversion 套件:

    dotnet add package GroupDocs.Conversion --version 25.10
    

    (同一套件支援 .NET 6+、.NET Framework 4.6.2 以及 .NET Core。)

  • 直接下載 – .NET 與 .NET Framework 的組件皆可於發佈頁面取得:
    https://releases.groupdocs.com/conversion/net/25-10/

相關資源