GroupDocs.Redaction for .NET 26.9 現已推出。此版本移除了 .NET 6、.NET 8 與 .NET 10 套件對 System.Drawing.Common 的相依性,並提升在 Linux 及其他支援作業系統上的跨平台相容性。

修正與增強

  • [Enhancement] 從 System.Drawing 移除,以增強跨平台相容性。 (REDACTIONNET-799)

有什麼新功能?

版本 26.9 完成了從 System.Drawing 的遷移。System.Drawing 類型已從公開 API 中移除。內部程式碼仍在 .NET Framework 4.6.2 上的文件處理中使用 System.Drawing。

無 System.Drawing.Common 的跨平台套件

.NET 6、.NET 8 與 .NET 10 套件不再依賴 System.Drawing.Common。文件處理不再需要 GDI+ 或 libgdiplus。.NET Framework 4.6.2 版仍使用 Windows GDI+ 堆疊。

從公開 API 中移除 System.Drawing 類型

顏色、點、大小、矩形與字型值現在僅來自 GroupDocs.Redaction.Options.Drawing。仍傳遞 System.Drawing.Color、System.Drawing.Point、System.Drawing.Size、System.Drawing.Rectangle 或 System.Drawing.Font 的程式碼將無法編譯。

GroupDocs.Redaction.Options.Drawing.Color 仍提供命名顏色,例如 Color.Black、Color.Blue,以及 Color.FromName 與 Color.FromArgb。

原始成員名稱再次成為目前的 API。BoxColor、FillColor、Size、TopLeft 與 Rectangle 現在使用 GroupDocs 繪圖類型。26.6 版中加入的暫時別名已過時:

已淘汰的別名 改用
ReplacementOptions.BoxFillColor ReplacementOptions.BoxColor
RegionReplacementOptions.AreaFillColor RegionReplacementOptions.FillColor
RegionReplacementOptions.AreaSize RegionReplacementOptions.Size
ImageAreaRedaction.TopLeftPosition ImageAreaRedaction.TopLeft
PageAreaFilter.AreaRectangle PageAreaFilter.Rectangle
TextFragment.BoundingRectangle TextFragment.Rectangle

公開 API 變更

已移除

  • 在 ReplacementOptions、RegionReplacementOptions、ImageAreaRedaction、PageAreaFilter、TextFragment 與 IImageFormatInstance 中接受或回傳 System.Drawing 類型的公開成員
  • ReplacementOptions(System.Drawing.Color)
  • 以 System.Drawing.Color、System.Drawing.Size 或 System.Drawing.Font 為參數的 RegionReplacementOptions 建構函式
  • ImageAreaRedaction(System.Drawing.Point, RegionReplacementOptions)
  • PageAreaFilter(System.Drawing.Point, System.Drawing.Size)
  • TextFragment(string, System.Drawing.Rectangle)
  • IImageFormatInstance.EditArea(System.Drawing.Point, RegionReplacementOptions)

目前的 API

  • ReplacementOptions.BoxColor 與 ReplacementOptions(GroupDocs.Redaction.Options.Drawing.Color)
  • RegionReplacementOptions.FillColor、RegionReplacementOptions.Size,以及以 GroupDocs.Redaction.Options.Drawing 顏色、大小與字型為參數的建構函式
  • ImageAreaRedaction.TopLeft 與 ImageAreaRedaction(GroupDocs.Redaction.Options.Drawing.Point, RegionReplacementOptions)
  • PageAreaFilter.Rectangle 與 PageAreaFilter(GroupDocs.Redaction.Options.Drawing.Point, GroupDocs.Redaction.Options.Drawing.Size)
  • TextFragment.Rectangle 與 TextFragment(string, GroupDocs.Redaction.Options.Drawing.Rectangle)
  • IImageFormatInstance.EditArea(GroupDocs.Redaction.Options.Drawing.Point, RegionReplacementOptions)

已過時

  • ReplacementOptions.BoxFillColor — 改用 ReplacementOptions.BoxColor
  • RegionReplacementOptions.AreaFillColor — 改用 RegionReplacementOptions.FillColor
  • RegionReplacementOptions.AreaSize — 改用 RegionReplacementOptions.Size
  • ImageAreaRedaction.TopLeftPosition — 改用 ImageAreaRedaction.TopLeft
  • PageAreaFilter.AreaRectangle — 改用 PageAreaFilter.Rectangle
  • TextFragment.BoundingRectangle — 改用 TextFragment.Rectangle

程式碼範例

在匹配文字上繪製彩色方框

using GroupDocs.Redaction.Options.Drawing;
using GroupDocs.Redaction.Redactions;

using (Redactor redactor = new Redactor("sample.docx"))
{
    redactor.Apply(new ExactPhraseRedaction("John Doe", new ReplacementOptions(Color.Black)));
    redactor.Save();
}

馬賽克圖像區域

using GroupDocs.Redaction.Options.Drawing;
using GroupDocs.Redaction.Redactions;

using (Redactor redactor = new Redactor("sample.jpg"))
{
    redactor.Apply(new ImageAreaRedaction(
        new Point(516, 311),
        new RegionReplacementOptions(Color.Blue, new Size(170, 35))));
    redactor.Save();
}

如何取得更新

了解更多