如何在 C# 中編輯 PDF
Iron Software 已將各種 PDF 編輯功能簡化為 IronPDF 庫中易於理解的方法。 無論是新增簽名、新增 HTML 頁尾、新增浮水印或新增註解。 IronPDF 是您的理想工具,它能讓您擁有可讀的程式碼、程式化的 PDF 產生、輕鬆的調試功能,並能無縫部署到任何受支援的環境或平台。
IronPDF擁有眾多PDF編輯功能。 在本教學文章中,我們將介紹一些主要功能,並提供程式碼範例和解釋。
透過本文,您將很好地了解如何使用 IronPDF 在 C# 中編輯 PDF。
快速入門:幾秒鐘內編輯您的 PDF 檔案
使用 IronPDF,您可以輕鬆地在 C# 中編輯 PDF 文件。 本快速指南將向您展示如何在現有 PDF 檔案中新增文字圖章。只需幾行程式碼,即可修改 PDF 檔案並立即儲存變更。 非常適合需要快速且有效率 PDF 編輯解決方案的開發人員。
立即開始使用 NuGet 建立 PDF 檔案:
使用 NuGet 套件管理器安裝 IronPDF
複製並運行這段程式碼。
var pdf = IronPdf.PdfDocument.FromFile("example.pdf"); pdf.ApplyStamp(new IronPdf.Editing.TextStamper("Confidential")); pdf.SaveAs("edited_example.pdf");部署到您的生產環境進行測試
目錄
-編輯文檔結構 -存取 PDF DOM 對象 -儲存和匯出 PDF 文檔 -從記憶體載入 PDF 文件 -將 PDF 檔案匯出到內存 -編輯文檔屬性 -使用 C# 解析 PDF 提取文字和圖像 -編輯文字和區域 -替換 PDF 中的文字 -增強 PDF 設計 -新增和編輯註釋 -印章文字和圖像 -自訂浮水印 背景與前景 -繪製文字和點陣圖 -畫線和矩形 -旋轉文字和頁面 -轉換 PDF 頁面
編輯文檔結構
存取 PDF DOM 對象
操作和存取 PDF 物件既快速又簡單。 IronPDF 簡化了開發人員與 DOM 物件互動的方式,使他們熟悉如何操作網頁的 DOM,從而允許開發人員以程式設計方式存取和操作各種元素,例如文字。
:path=/static-assets/pdf/content-code-examples/how-to/access-pdf-dom-object.csusing IronPdf;
using System.Linq;
// Instantiate Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Create a PDF from a URL
PdfDocument pdf = renderer.RenderUrlAsPdf("https://ironpdf.com/");
// Access DOM Objects
var objects = pdf.Pages.First().ObjectModel;有關此程式碼片段的更詳細解釋以及探索其附加功能,請參閱我們的綜合操作指南。
儲存和匯出文檔
為了保存和匯出文檔,IronPDF 允許使用者快速將編輯後的文檔PdfDocument.SaveAs儲存到磁碟,同時還允許匯出為其他格式,例如二進位資料和記憶體流。
有關此程式碼片段的更詳細解釋以及探索其附加功能,請參閱我們的綜合操作指南。
從記憶體載入 PDF
IronPDF 與現有的 C# .NET 應用程式完美整合; 我們可以透過MemoryStream物件從 MemoryStream 載入和建立 PDF 檔案。
:path=/static-assets/pdf/content-code-examples/how-to/pdf-memory-stream-from-stream.csusing IronPdf;
using System.IO;
// Read PDF file as stream
var fileByte = File.ReadAllBytes("sample.pdf");
// Instantiate PDF object from stream
PdfDocument pdf = new PdfDocument(fileByte);有關此程式碼片段的更詳細解釋以及探索其附加功能,請參閱我們的綜合操作指南。
將 PDF 文件匯出到內存
同樣,我們也可以透過MemoryStream物件將 PDF 匯出到 C# .NET 中的 MemoryStream。
:path=/static-assets/pdf/content-code-examples/how-to/pdf-to-memory-stream-to-stream.csusing IronPdf;
using System.IO;
var renderer = new ChromePdfRenderer();
// Convert the URL into PDF
PdfDocument pdf = renderer.RenderUrlAsPdf("https://ironpdf.com/");
// Export PDF as Stream
MemoryStream pdfAsStream = pdf.Stream;
// Export PDF as Byte Array
byte[] pdfAsByte = pdf.BinaryData;有關此程式碼片段的更詳細解釋以及探索其附加功能,請參閱我們的綜合操作指南。
編輯文檔文本
用 C# 解析 PDF
使用 IronPDF 從 PDF 中提取文字既快速又簡單。 只需使用ExtractAllText方法即可提取每一頁中的所有文本,讓您輕鬆存取和使用文件內容。 這項強大的功能可以提高工作效率並簡化您的工作流程!
:path=/static-assets/pdf/content-code-examples/how-to/csharp-parse-pdf-parse-pdf.csusing IronPdf;
// Select the desired PDF File
PdfDocument pdf = PdfDocument.FromFile("sample.pdf");
// Extract all text from an pdf
string allText = pdf.ExtractAllText();
// Extract all text from page 1
string page1Text = pdf.ExtractTextFromPage(0);有關此程式碼片段的更詳細解釋以及探索其附加功能,請參閱我們的綜合操作指南。
提取文字和圖像
使用 IronPDF,您不僅限於提取文本,還可以非常輕鬆地從 PDF 中提取圖像! 使用ExtractAllImages功能,您可以快速擷取所需的所有影像。
:path=/static-assets/pdf/content-code-examples/how-to/extract-text-and-images-extract-image.csusing IronPdf;
PdfDocument pdf = PdfDocument.FromFile("sample.pdf");
// Extract images
var images = pdf.ExtractAllImages();
for(int i = 0; i < images.Count; i++)
{
// Export the extracted images
images[i].SaveAs($"images/image{i}.png");
}有關此程式碼片段的更詳細解釋以及探索其附加功能,請參閱我們的綜合操作指南。
編輯文字和區域
在我們需要透過編輯來保護敏感資訊的情況下,我們有一個強大的工具可以隨時使用: RedactTextonAllPages 。 借助此功能,我們可以輕鬆識別並隱藏整個 PDF 中特定關鍵字的每一個實例。 這是一種有效的方式,既能確保機密資訊受到保護,又能讓我們放心地分享文件。
:path=/static-assets/pdf/content-code-examples/how-to/redact-text-redact-text.csusing IronPdf;
PdfDocument pdf = PdfDocument.FromFile("novel.pdf");
// Redact 'Alaric' phrase from all pages
pdf.RedactTextOnAllPages("Alaric");
pdf.SaveAs("redacted.pdf");有關此程式碼片段的更詳細解釋以及探索其附加功能,請參閱我們的綜合操作指南。
替換PDF中的文本
若要使用 IronPDF 增強 PDF 文檔,您可以輕鬆地替換整個文件中的文字。透過使用ReplaceTextonAllPages功能,您可以提供需要替換的oldText文字以及要取代它的newText 。 此方法可以有效率地更新文件中所有oldText實例,確保文件外觀一致且專業。
:path=/static-assets/pdf/content-code-examples/how-to/find-replace-text-all-page.csusing IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>.NET6</h1>");
string oldText = ".NET6";
string newText = ".NET7";
// Replace text on all pages
pdf.ReplaceTextOnAllPages(oldText, newText);
pdf.SaveAs("replaceText.pdf");有關此程式碼片段的更詳細解釋以及探索其附加功能,請參閱我們的綜合操作指南。
增強型 PDF 設計
新增和編輯註釋
IronPDF 為 PDF 註釋提供了豐富的自訂選項,讓使用者可以直接在 PDF 頁面中新增"便條"註解。 透過TextAnnotation類,可以以程式設計方式新增註釋,並提供諸如調整大小、透明度、圖示選擇和編輯功能等進階選項。
:path=/static-assets/pdf/content-code-examples/how-to/annotation-add-annotation.csusing IronPdf;
using IronPdf.Annotations;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Annotation</h1>");
// Create a PDF annotation object on a specified page index
TextAnnotation annotation = new TextAnnotation(0)
{
Title = "This is the title",
Contents = "This is the long 'sticky note' comment content...",
X = 50,
Y = 700,
};
// Add the annotation
pdf.Annotations.Add(annotation);
pdf.SaveAs("annotation.pdf");有關此程式碼片段的更詳細解釋以及探索其附加功能,請參閱我們的綜合操作指南。
印章文字和圖像
IronPDF 提供了豐富的選項,可以自訂如何在 PDF 上添加文字和圖像。 在這個例子中,我們將使用TextStamper類,透過ApplyStamp方法將圖章應用在 PDF 上,如下所示。
:path=/static-assets/pdf/content-code-examples/how-to/stamp-text-image-stamp-text.csusing IronPdf;
using IronPdf.Editing;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");
// Create text stamper
TextStamper textStamper = new TextStamper()
{
Text = "Text Stamper!",
FontFamily = "Bungee Spice",
UseGoogleFont = true,
FontSize = 30,
IsBold = true,
IsItalic = true,
VerticalAlignment = VerticalAlignment.Top,
};
// Stamp the text stamper
pdf.ApplyStamp(textStamper);
pdf.SaveAs("stampText.pdf");有關此程式碼片段的更詳細解釋以及探索其附加功能,請參閱我們的綜合操作指南。
自訂浮水印
我們還可以使用ApplyWatermark方法將浮水印無縫整合到新渲染的 PDF 和現有文件中。 此功能可增強品牌認知度,確保您的宣傳資料傳達專業形象。
:path=/static-assets/pdf/content-code-examples/how-to/custom-watermark-apply-watermark.csusing IronPdf;
string watermarkHtml = @"
<img src='https://ironsoftware.com/img/products/ironpdf-logo-text-dotnet.svg'>
<h1>Iron Software</h1>";
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Watermark</h1>");
// Apply watermark
pdf.ApplyWatermark(watermarkHtml);
pdf.SaveAs("watermark.pdf");有關此程式碼片段的更詳細解釋以及探索其附加功能,請參閱我們的綜合操作指南。
背景與前景
除了浮水印和圖章之外,我們還可以使用AddBackgroundPdf為 PDF 添加背景,從而完全自訂您的 PDF。
:path=/static-assets/pdf/content-code-examples/how-to/background-foreground-background.csusing IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Main HTML content</h1>");
// Render background
PdfDocument background = renderer.RenderHtmlAsPdf("<body style='background-color: cyan;'></body>");
// Add background
pdf.AddBackgroundPdf(background);
pdf.SaveAs("addBackground.pdf");有關此程式碼片段的更詳細解釋以及探索其附加功能,請參閱我們的綜合操作指南。
繪製文字和點陣圖
在PDF上繪製文字既直觀又簡單; 我們使用DrawText並為其提供必要的參數。 在這個例子中,我們添加了新短語Some text字體為 Times New Roman。
:path=/static-assets/pdf/content-code-examples/how-to/draw-text-and-bitmap-draw-text.csusing IronPdf;
using IronSoftware.Drawing;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>testing</h1>");
// Draw text on PDF
pdf.DrawText("Some text", FontTypes.TimesNewRoman.Name, FontSize: 12, PageIndex: 0, X: 100, Y: 100, Color.Black, Rotation: 0);
pdf.SaveAs("drawText.pdf");有關此程式碼片段的更詳細解釋以及探索其附加功能,請參閱我們的綜合操作指南。
畫線和矩形
IronPDF 也支援在 PDF 上繪製線條。 我們首先透過初始化兩個PointF類別來建立起點和終點,然後使用DrawLine方法應用它們,如下所示。
:path=/static-assets/pdf/content-code-examples/how-to/draw-line-and-rectangle-draw-line.csusing IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>testing</h1>");
// Configure the required parameters
int pageIndex = 0;
var start = new IronSoftware.Drawing.PointF(200,150);
var end = new IronSoftware.Drawing.PointF(1000,150);
int width = 10;
var color = new IronSoftware.Drawing.Color("#000000");
// Draw line on PDF
pdf.DrawLine(pageIndex, start, end, width, color);
pdf.SaveAs("drawLine.pdf");有關此程式碼片段的更詳細解釋以及探索其附加功能,請參閱我們的綜合操作指南。
旋轉文字和頁面
要旋轉 PDF 頁面,我們可以使用SetPageRotation方法來旋轉特定頁面。 在下面的範例中,我們只輪換第 2 頁到第 4 頁,保持第 1 頁不變,以展示其功能。
:path=/static-assets/pdf/content-code-examples/how-to/rotating-text-set-page-rotation.csusing IronPdf;
using IronPdf.Rendering;
using System.Linq;
// Import PDF
PdfDocument pdf = PdfDocument.FromFile("multi-page.pdf");
// Set rotation for a single page
pdf.SetPageRotation(0, PdfPageRotation.Clockwise90);
// Set rotation for multiple pages
pdf.SetPageRotations(Enumerable.Range(1,3), PdfPageRotation.Clockwise270);
// Set rotation for the entire document
pdf.SetAllPageRotations(PdfPageRotation.Clockwise180);
pdf.SaveAs("rotated.pdf");有關旋轉角度的可用枚舉列表,請參閱此處。
有關此程式碼片段的更詳細解釋以及探索其附加功能,請參閱我們的綜合操作指南。
轉換PDF頁面
除了旋轉之外,我們還可以透過提供一系列參數來變換 PDF 頁面。 在下面的範例中,我們選擇 PDF 的第一頁,並使用Transform功能,將第一頁的內容向右下方移動 50 點,並將其縮放至原始大小的 80%。
:path=/static-assets/pdf/content-code-examples/how-to/transform-pdf-pages-transform-pdf.csusing IronPdf;
PdfDocument pdf = PdfDocument.FromFile("basic.pdf");
pdf.Pages[0].Transform(50, 50, 0.8, 0.8);
pdf.SaveAs("transformPage.pdf");有關此程式碼片段的更詳細解釋以及探索其附加功能,請參閱我們的綜合操作指南。
結論
以上範例表明,IronPDF 在編輯 PDF 時具有開箱即用的關鍵功能。
如果您想提出功能請求或對 IronPDF 或許可有任何一般性問題,請聯絡我們的支援團隊。 我們非常樂意為您提供協助。
常見問題解答
如何使用C#編輯PDF文件?
IronPDF 提供全面的 C# PDF 文件編輯工具。您可以使用AddPage和RemovePage等方法有效地操作頁面、新增或刪除內容以及套用各種修改。
如何使用 C# 為 PDF 新增浮水印?
若要在 C# 中為 PDF 新增浮水印,請使用 IronPDF 的ApplyWatermark方法和TextStamper類,這樣就可以自訂浮水印的文字、不透明度和旋轉角度。
如何使用 C# 壓縮 PDF 檔案?
IronPDF 提供了CompressImages方法,該方法可以減少 PDF 中嵌入圖像的大小,從而有效地壓縮檔案大小。
是否可以用 C# 為 PDF 新增頁首和頁尾?
是的,使用 IronPDF,您可以使用HtmlHeaderFooter或TextHeaderFooter類別為 PDF 添加頁首和頁腳,您可以在其中定義 HTML 內容或文字並調整高度等屬性。
有什麼方法可以將多個PDF檔案合併成一個文件?
若要合併多個 PDF 文件,請使用PdfDocument.FromFile載入每個文檔,然後使用Merge方法將它們合併成一個文件,並將其儲存為新文檔。
如何使用 C# 替換 PDF 中的特定文字?
IronPDF 讓您可以使用ReplaceTextOnPage方法來取代 PDF 中的文本,該方法會在頁面上搜尋特定文本並以程式設計方式進行替換。
IronPDF能否簡化PDF表單的建立和填寫流程?
是的,IronPDF 支援建立 PDF 表單並透過程式設計方式填入現有表單字段,從而實現與 PDF 文件的動態互動。
如何使用 IronPDF 為 PDF 新增註解?
IronPDF 提供在 PDF 中新增註釋的功能。您可以使用註釋物件建立文字註釋和其他類型的註釋,並將其放置在所需的頁面上。
如何使用 C# 處理 PDF 中的數位簽章?
IronPDF 支援使用X509Certificate2數位憑證為 PDF 文件添加數位簽名,從而確保文件的真實性和完整性。
是否可以在 C# 中設定 PDF 頁面的背景?
是的,使用 IronPDF,您可以透過套用影像或色彩背景來設定 PDF 頁面的背景,從而增強文件設計和簡報效果。
IronPDF 是否相容於 .NET 10?相容 .NET 10 能帶來哪些好處?
是的,IronPDF 完全相容於 .NET 10,並充分利用了其效能和語言方面的增強功能。它在 .NET 10 專案中“開箱即用”,支援桌面、Web、MAUI 和服務等多種應用場景,並受益於數組介面方法去虛擬化和堆疊分配增強等改進。






