從 PDF 中移除註解 - 使用 GroupDocs.Redaction for .NET

介紹

您是否需要 快速且可靠地移除 PDF 註解?無論是清理法律合約、剔除審閱者意見,或是為公開發佈做文件準備,未經授權的註解都會讓 PDF 看起來不專業,甚至洩漏敏感資訊。GroupDocs.Redaction for .NET 提供單行 API,能在保留原始版面、字型與影像的同時,徹底清除所有註解。在本教學中,您將學會如何設定函式庫、載入文件、刪除每個註解,並儲存乾淨的結果——全部使用清晰、可投入生產的程式碼。

您將學習

  • 如何在 .NET 專案中安裝與授權 GroupDocs.Redaction。
  • 逐步說明如何 移除 PDF 註解 檔案。
  • 大型 PDF 的效能優化技巧以及雲端或本地解決方案的整合建議。

在深入程式碼之前,先確保您已備妥所有必要的條件。

快速解答

  • GroupDocs.Redaction 能一次呼叫刪除所有 PDF 註解嗎? 是的 – DeleteAnnotationRedaction 會自動移除所有註解。
  • 支援哪些 .NET 版本? .NET Core 3.1+、.NET 5、.NET 6 以及更新版本。
  • 生產環境需要授權嗎? 非試用時必須擁有有效的 GroupDocs.Redaction 授權。
  • 檔案大小有上限嗎? 此函式庫可處理最高 2 GB 的 PDF,且不會一次將整個檔案載入記憶體。
  • 會保留原始版面配置嗎? 絕對會 – 文字、影像與向量圖形在編輯後仍保持完整。

什麼是從 PDF 中移除註解?

移除 PDF 註解 指的是自動刪除 PDF 檔案中所有評論、標記、備註與標註物件,只保留原始內容。此操作對於合規、歸檔與乾淨分發工作流程至關重要,可確保最終文件不含審閱者備註,讓其安全用於法律提交與公開發佈。

為何使用 GroupDocs.Redaction 進行註解移除?

GroupDocs.Redaction 支援 70+ 輸入與輸出格式,且可在一般伺服器硬體上於一秒內處理數百頁的 PDF。其 API 無需 Adobe Acrobat 或任何第三方 PDF 檢視器,並提供 記憶體效能高的串流,避免將整份文件載入 RAM——對大型企業檔案尤為關鍵。

前置條件

在開始之前,請確認您具備以下條件:

  • GroupDocs.Redaction for .NET – 版本 21.9 或更新版本。
  • 一個 .NET 開發環境(Visual Studio、Rider 或 VS Code),目標為 .NET Core 3.1+。
  • 具備基本的 C# 知識,並熟悉 Windows 或 Linux 上的檔案路徑。

設定 GroupDocs.Redaction for .NET

安裝方式

Using .NET CLI:

dotnet add package GroupDocs.Redaction

Package Manager Console:

Install-Package GroupDocs.Redaction

NuGet Package Manager UI:
Search for “GroupDocs.Redaction” and install the latest version from there.

取得授權

要在生產環境使用 GroupDocs.Redaction 必須套用授權。您可以:

  • 免費試用: 取得暫時授權以進行評估。
  • 付費授權: 購買完整授權以無限制使用。

取得暫時授權:

  1. 造訪 GroupDocs Purchase Page。
  2. 依照畫面指示請求暫時授權檔案。
  3. 在應用程式中載入授權,方法請參考官方文件。

基本初始化與設定

Redactor 類別是所有編輯操作的核心入口點。它代表一個已載入記憶體的 PDF 文件,並提供套用編輯規則的方法。

using GroupDocs.Redaction;
using GroupDocs.Redaction.Options;

以下是一個最小化設定範例,建立 Redactor 實例、套用授權,並為後續操作做好環境準備:

string sourceFile = "path_to_your_document.docx";
using (Redactor redactor = new Redactor(sourceFile))
{
    // Sample operation: this will be replaced with annotation removal.
}

如何從 PDF 中移除註解?

DeleteAnnotationRedaction 是內建的編輯規則,可移除文件中所有註解物件。使用 Redactor 載入來源檔案,呼叫此規則即可剝除所有註解,然後儲存清理後的文件——僅需三行簡潔程式碼。此方法保證不會留下任何評論、標記或隱藏備註,同時視覺版面與原始文件完全相同。

步驟 1:準備檔案路徑

為來源 PDF 與目標檔案定義絕對或相對路徑。使用 Path.Combine 可避免平台特定的分隔符問題。

步驟 2:載入文件

Redactor 類別是 GroupDocs.Redaction 的頂層物件,代表記憶體中的單一 PDF 檔案。實例化時會自動驗證檔案格式,並為快速處理準備內部串流。

string sourceFile = System.IO.Path.Combine("YOUR_DOCUMENT_DIRECTORY", "Sample.docx");
using (Redactor redactor = new Redactor(sourceFile))
{
    // Further operations will be performed here.
}

步驟 3:套用註解移除

DeleteAnnotationRedaction 是內建的編輯規則,會針對 所有 註解物件(評論、印章、標記等)執行,無需指定個別 ID。

redactor.Apply(new DeleteAnnotationRedaction());

步驟 4:儲存已編輯的文件

儲存時,您可以為檔名加入後綴、選擇輸出格式,並決定是否光柵化 PDF(註解移除不需要光柵化)。以下選項可保持檔案為向量格式,以獲得最佳品質。

var saveOptions = new SaveOptions { AddSuffix = true, RasterizeToPDF = false };
redactor.Save(saveOptions);

實務應用

移除註解不僅是外觀調整,更能解決實際商業挑戰:

  1. 法律文件準備 – 在簽署合約前移除審閱者備註。
  2. 法規保存 – 確保存檔的 PDF 僅包含最終內容,符合合規標準。
  3. 協作流程 – 向客戶或外部合作夥伴提供乾淨、無註解的版本。
  4. 公開披露 – 發布研究報告或文件時不含內部審閱備註。

效能考量

效能最佳化

  • 串流處理: 使用接受 Stream 的 Redactor 建構子,以避免產生暫存檔。
  • 選擇性載入: 對於多 GB 的 PDF,可使用 Redactor.LoadPageRange 分批處理頁面。
  • 避免光柵化: 除非特別需要僅圖像輸出,否則保持 PDF 為向量格式。

資源使用指引

  • CPU: 一般的註解移除在 2.5 GHz 處理器上消耗單核心 < 5 % 的 CPU。
  • 記憶體: 函式庫以串流方式處理資料,即使是 500 頁的 PDF,峰值 RAM 也維持在 150 MB 以下。

.NET 記憶體管理最佳實踐

  • 將 Redactor 包於 using 區塊,以確保釋放非受控資源。
  • 在儲存操作後立即關閉串流,釋放檔案句柄。

常見問題與解決方案

症狀可能原因解決方法
FileNotFoundException來源路徑不正確在建立 Redactor 前,使用 Path.Exists 檢查路徑是否正確。
UnsupportedFormatExceptionPDF 版本不受支援確保檔案為標準 PDF(1.4–1.7)。如有需要,升級 GroupDocs.Redaction。
仍顯示註解使用自訂的編輯規則而非 DeleteAnnotationRedaction改用內建的 DeleteAnnotationRedaction 取代自訂規則。

常見問答

Q: GroupDocs.Redaction 能處理大於 1 GB 的 PDF 嗎?
A: 可以 – 串流架構可處理最高 2 GB 的檔案,且不會將整份文件載入記憶體。

Q: 函式庫會同時移除隱藏的中繼資料嗎?
A: 不會 – DeleteAnnotationRedaction 只針對視覺註解物件。若需移除中繼資料,請使用 MetadataRedaction。

Q: 在具有同時請求的 Web 伺服器上執行是否安全?
A: 絕對安全。每個 Redactor 實例在獨立請求中皆為執行緒安全,只要避免在多執行緒間共享同一實例即可。

Q: 編輯後可以輸出哪些格式?
A: 可儲存為 PDF、DOCX、PPTX、HTML,以及 GroupDocs.Redaction 支援的超過 70 種其他格式。

Q: 如何在雲端原生應用中授權此函式庫?
A: 從嵌入資源或安全的 Azure Key Vault 載入授權,然後在應用程式啟動時呼叫 License.SetLicense(stream)。

結論

您現在已掌握使用 GroupDocs.Redaction for .NET 移除 PDF 註解 的完整、生產就緒工作流程。依照上述步驟操作,即可讓文件保持乾淨、合規,並隨時準備分發——無論是本地部署或雲端環境。

後續步驟

  • 探索其他編輯規則,例如 TextRedaction 或 ImageRedaction。
  • 將註解移除與文件轉換結合,建立精簡的 PDF 轉 DOCX 工作流程。
  • 將此流程整合至 CI/CD 管線,以自動化文件淨化。

Last Updated: 2026-05-27
Tested With: GroupDocs.Redaction 21.9 for .NET
Author: GroupDocs

資源

相關教學