IRONSOFTWAREHOME

如何在 C# 中儲存與編輯 PDF 修訂歷史紀錄

Curtis Chau
Curtis Chau
Updated: 2026年4月22日

IronPDF 讓 C# 開發人員能夠透過修訂歷史記錄,追蹤並管理 PDF 文件隨時間推移的變更。 在共同編輯文件時,請使用 SaveAsRevision 方法節省文件版本,並透過 GetRevision 回滾至先前版本。

快速入門:使用 IronPDF 儲存 PDF 修訂版本

在您的 C# 應用程式中使用 IronPDF 管理並儲存 PDF 修訂版本。 本指南將示範如何使用 IronPDF 的 SaveAsRevision 方法儲存文件版本,以追蹤及管理 PDF 變更。 載入 PDF 檔案並將其儲存為獨立的修訂版本,以歸檔所有修改內容。

  1. 1Install IronPDF with NuGet Package Manager

    PM > Install-Package IronPdf

  2. 2複製並運行這段程式碼片段。

    var pdf = IronPdf.PdfDocument.FromFile("example.pdf");
    pdf.SaveAsRevision("revision1.pdf");
    C#
  3. 3部署以在您的實時環境中測試

    今天就開始在您的專案中使用IronPDF,透過免費試用
    arrow pointer
簡化工作流程(6 個步驟)
  1. 下載 C# 函式庫,透過 IronPDF 儲存及編輯 PDF 修訂歷史紀錄
  2. 使用 SaveAsRevision 方法儲存 PDF 版本。
  3. 使用 GetRevision 方法檢索 PDF 版本。
  4. 存取 RevisionCount 屬性以取得修訂次數。
  5. 呼叫 TrackChanges: ChangeTrackingModes.EnableChangeTracking 方法以管理中間修訂版本的元資料。
  6. 使用 SaveAs 儲存最終的 PDF 檔案。

如何儲存並簽署 PDF 修訂版本?

在以下範例中,我們開啟一個 PDF 檔案,進行各種編輯,然後簽署後再儲存。 關於簽名權限,我們僅允許將"表單填寫"設為未來的編輯選項; 否則,該簽名將因任何其他編輯而失效。

接著我們呼叫 SaveAsRevision 將修訂版本儲存至版本歷史,並將新文件儲存至磁碟。 此方法對於在Enterprise應用程式中實作數位簽章工作流程時特別有用,因為在這些情境下,文件的完整性與稽核追蹤至關重要。

請注意: 為提升 PDF 匯出效能,我們將 TrackChanges 選項設為 false。 (若要使用增量儲存功能,此選項必須設定為 true。
using IronPdf;
using IronPdf.Rendering;

// Import PDF and enable TrackChanges
PdfDocument pdf = PdfDocument.FromFile("annual_census.pdf", TrackChanges: ChangeTrackingModes.EnableChangeTracking);
// ... various edits ...
pdf.SignWithFile("/assets/IronSignature.p12", "password", null, IronPdf.Signing.SignaturePermissions.AdditionalSignaturesAndFormFillingAllowed);

PdfDocument pdfWithRevision = pdf.SaveAsRevision();

pdfWithRevision.SaveAs("annual_census_2.pdf");

ChangeTrackingModes.EnableChangeTracking 參數對於維持完整的稽核追蹤至關重要。 啟用此功能後,IronPDF 會將所有文件修改內容保存為獨立圖層,讓使用者能夠瀏覽文件的修改歷史紀錄。 此功能整合了 PDF 安全與權限機制,以確保僅授權使用者能存取特定版本。

為何理解"增量節省"對簽名至關重要?

雖然某些檢視器(如 Chrome 瀏覽器)僅顯示單一版本,但 PDF 檔案可儲存文件的先前版本,類似於 Git 的提交歷史紀錄。 您會在 Adobe Acrobat 等進階 PDF 檢視器中看到此功能。 在使用已簽署 PDF 時,理解此增量節省機制至關重要,因為每個簽名皆適用於特定的文件狀態。

處理 PDF 簽名時,請注意:對 PDF 進行簽名僅適用於該 PDF 的當前版本。 您的 PDF 檔案可能包含舊版簽名,或可能有未簽名的版本。 我們可以將其具體化為以下範例:









PDF 文件迭代 證書 A 證書 B 證書 C# 證書 D
0 (首次儲存)
1
2
3
(僅限表單欄位編輯)

(僅限表單欄位編輯)
4(僅編輯表單欄位)
5
(不得再進行任何編輯)

(不得再進行任何編輯)

(不得再進行任何編輯)

上文所示文件已歷經 6 次修訂。 本文件經核准後,可在公司各部門間傳閱,直至 3 版本定稿為止。 在此迭代中,A 先生與 B 先生均在設定為"僅限表單欄位編輯"權限的情況下簽署了該文件。 這意味著允許在 PDF 文件中填寫表單欄位,但對文件進行任何其他變更都會使簽名失效。

在上述範例中,假設人員 C 填寫了表單並將其發送回人員 A、B 和 D,他們均以"不允許編輯"的權限對文件進行了最終簽署。 由於本文件中未執行任何會導致簽名失效的操作,因此當我們執行 IronPDF 的簽名方法時,會返回 true

這種增量儲存方法若與全面的 PDF 安全功能結合使用,將極具價值,因為它能確保每個簽名僅對其所套用的特定文件狀態有效。 此機制可防止未經授權的修改,同時完整保留所有變更的稽核追蹤紀錄。

我最喜歡的程式庫是IronPDF。它允許快速高效地操作PDF文件。它還有許多有價值的功能,例如導出到PDF/A格式和數位簽署PDF文件。

Milan Jovanovic

Microsoft MVP

查看案例研究

IronOCR意味著我們每年可以從手動處理中節省$40,000,同時提高生產力,釋放資源以進行高影響的任務。我會強烈推薦它。

Brent Matzelle

首席技術官,OPYN

查看案例研究

IronSuite在我們的運營中扮演著至關重要的角色。這些工具增加了包括建立平面圖和改善庫存管理在內的業務效率。

David Jones

首席軟體工程師,Agorus Build

查看案例研究

如何還原至舊版本?

若要還原至 PDF 的先前版本,請使用 GetRevision 方法。 這將忽略自本次修訂以來的所有變更,包括較新的簽名。 當您需要從意外變更中恢復,或檢視文件隨時間演變的歷程時,此功能至關重要。

using IronPdf;

PdfDocument pdf = PdfDocument.FromFile("report.pdf");

int versions = pdf.RevisionCount; // total revisions

PdfDocument rolledBackPdf = pdf.GetRevision(2);
rolledBackPdf.SaveAs("report-draft.pdf");

GetRevision 方法會建立一個新的 PDF 文件實例,其中僅包含截至指定修訂號為止的內容。 此工具適用於以下情境:

  • 您需要比較文件的不同版本
  • 因未經授權的變更,某個簽名已被視為無效
  • 您希望從較早的版本分支,以採用不同的審核工作流程
  • 您需要透過展示特定時間點的文件狀態來證明符合規範

處理修訂版本時,還原操作不會影響原始 PDF 檔案——它會建立一個新的文件實例。 此方法在維持資料完整性的同時,亦能提供管理文件版本的靈活性。 若需更進階的 PDF 處理技術,請探索 IronPDF 的全面編輯功能

PDF 修訂版本管理的最佳實踐

在應用程式中實作版本歷史記錄時,請參考以下最佳實務:

  1. 務必啟用修訂追蹤:開啟需要修訂歷史紀錄的 PDF 檔案時,請設定 EnableChangeTracking

  2. 記錄修訂策略:應清楚記錄何時以及為何儲存修訂內容,特別是在多使用者環境中。

  3. 實施存取控制:結合修訂歷史紀錄與 PDF 權限及密碼,確保僅授權使用者能建立或存取特定修訂版本。

  4. 定期匯出將重要修訂版本定期匯出至獨立檔案,以供長期歸檔。

  5. 測試簽名相容性:測試不同簽名權限如何與您的修訂工作流程互動,以避免發生意外的無效化情況。

透過遵循這些實務準則並善用 IronPDF 的修訂管理功能,您可以建立精細的工作流程,在整個協作過程中既能維持完整的稽核追蹤,又能確保文件的完整性。 若需進一步了解如何在您的應用程式中實作這些功能,請參閱詳盡的 IronPDF 文件,或探索符合您 Enterprise 需求的授權方案

常見問題

如何在C#中保存PDF修訂?

您可以使用IronPDF的SaveAsRevision方法在C#中保存PDF修訂。只需載入您的PDF文件並調用pdf.SaveAsRevision('revision1.pdf')即可建立跟踪所有修改的保存版本。

跟踪PDF修訂歷史的目的何在?

IronPDF的修訂歷史功能允許開發人員隨時間跟踪文件更改,使您能夠使用GetRevision方法回滾到以前的版本。這對於維護企業應用中的審計軌跡至關重要。

如何啟用增量保存的更改追踪?

要在IronPDF中啟用更改追踪,請將TrackChanges選項設置為true並使用ChangeTrackingModes.EnableChangeTracking參數。這會將所有文件修改保留為單獨的層,允許您瀏覽文件的完整歷史。

我可以簽署PDF並維持其修訂歷史嗎?

是的,IronPDF允許您在維持修訂歷史的同時簽署PDF。當您簽署文件時,簽名適用於當前迭代。您可以設置特定的權限,例如只允許填寫表單,以防止簽名因後續編輯而被無效化。

如何檢索以前的PDF版本?

IronPDF提供GetRevision方法來檢索PDF文件的以前版本。您還可以使用RevisionCount屬性來確定文件歷史中存在多少次修訂。

保存新修訂時,簽名會發生什麼變化?

在簽署文件後使用IronPDF的SaveAsRevision方法時,該修訂的簽名將保持有效。然而,任何超出允許權限(如填寫表單)的編輯將無效化簽名,確保文件完整性。

修訂歷史在所有PDF查看器中都可見嗎?

儘管IronPDF保存完整的修訂歷史,類似於Git提交,但並非所有PDF查看器都顯示該資訊。像Chrome這樣的基本查看器只顯示當前版本,而像Adobe Acrobat這樣的高級查看器可以顯示完整的修訂歷史。

增量保存如何改善PDF性能?

IronPDF的增量保存功能通過僅保存更改而不是重寫整個文件來提高導出性能。您可以在不需要修訂追踪時將TrackChanges設置為false來優化性能,儘管這必須為增量保存啟用。

Can IronPDF integrate PDF revision history with security features?

Yes, IronPDF integrates revision history with security features such as permissions and passwords to ensure that only authorized users can access or modify specific revisions, thus maintaining document integrity and preventing unauthorized changes.

What best practices should I follow when managing PDF revisions in IronPDF?

Key practices include enabling change tracking, documenting your revision strategy, implementing access controls, exporting important revisions periodically, and testing signature compatibility with your workflow to avoid invalidations.

Curtis Chau
技術作家

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。

...
閱讀更多

準備開始了嗎?

Nuget Downloads 21,105,021版本:2026.9剛剛發布

立即獲取免費

立即獲取 30天試用金鑰

bullet_checked無需信用卡或註冊帳號
bullet_test在生產
環境中進行測試,且不顯示浮水印
bullet_calendar30 天全
功能產品
bullet_support試用期間提供 24/5 技術
支援
立即獲取您的免費30天試用密鑰
不需要信用卡或建立賬戶
C# 用於PDF的NuGet程式庫
使用NuGet安裝

版本: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. 在解決方案資源管理器,右鍵點選參考,管理NuGet包
  2. 選擇瀏覽並搜尋"IronPdf"
  3. 選擇套件並安裝
C# PDF DLL
下載DLL

版本: 2026.9

或者點擊此處下載Windows安裝程式。

  1. 下載並解壓IronPDF到類似~/Libs的位置,位於您的解決方案目錄中
  2. 在Visual Studio解決方案資源管理器,右鍵點選參考。選擇瀏覽,"IronPdf.dll"

授權從$999

有問題嗎?聯絡我們的開發團隊。

Key in blue circle

立即免費取得 30 天試用金鑰

Your trial license will be sent to your email address

無任何限制。100% 解鎖。無需信用卡。

OR
bullet_checked無需信用卡或建立帳號無任何限制。100% 解鎖。無需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
預訂您的免費現場演示
Booking Badge

受到全球數百萬工程師的信任

Iron Software的客戶標誌
獲取您的無義務諮詢
填寫以下表格或電子郵件sales@ironsoftware.com
您的詳細資訊將始終保密
受到全球數百萬工程師的信任
Iron Software的客戶標誌
立即獲取您的30天試用金鑰
無需信用卡或帳戶建立
C# 用於PDF的NuGet程式庫
使用NuGet安裝

版本: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. 在解決方案資源管理器,右鍵點選參考,管理NuGet包
  2. 選擇瀏覽並搜尋"IronPdf"
  3. 選擇套件並安裝
C# PDF DLL
下載DLL

版本: 2026.9

或者點擊此處下載Windows安裝程式。

  1. 下載並解壓IronPDF到類似~/Libs的位置,位於您的解決方案目錄中
  2. 在Visual Studio解決方案資源管理器,右鍵點選參考。選擇瀏覽,"IronPdf.dll"

授權從$999