從 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 必須套用授權。您可以:
- 免費試用: 取得暫時授權以進行評估。
- 付費授權: 購買完整授權以無限制使用。
取得暫時授權:
- 造訪 GroupDocs Purchase Page。
- 依照畫面指示請求暫時授權檔案。
- 在應用程式中載入授權,方法請參考官方文件。
基本初始化與設定
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);
實務應用
移除註解不僅是外觀調整,更能解決實際商業挑戰:
- 法律文件準備 – 在簽署合約前移除審閱者備註。
- 法規保存 – 確保存檔的 PDF 僅包含最終內容,符合合規標準。
- 協作流程 – 向客戶或外部合作夥伴提供乾淨、無註解的版本。
- 公開披露 – 發布研究報告或文件時不含內部審閱備註。
效能考量
效能最佳化
- 串流處理: 使用接受
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 檢查路徑是否正確。 |
| UnsupportedFormatException | PDF 版本不受支援 | 確保檔案為標準 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
資源