如何使用 C# 替換 PDF 中的文字
使用 IronPDF 的簡易 API 透過 C# 替換 PDF 中的文字——若要進行全文件範圍的變更,請使用 ReplaceTextOnAllPages();若要針對特定頁面進行變更,請使用 ReplaceTextOnPage()。 這使 .NET 應用程式能夠實現自動修正、範本自訂以及動態內容更新。
快速入門:使用 IronPDF 替換 PDF 中的文字
立即使用 IronPDF 輕鬆替換 PDF 文件中的文字。 只需幾行程式碼,您就能快速更新或自訂文件。 此範例示範如何在 PDF 的所有頁面中替換文字。 只需載入您的 PDF 檔案,指定要搜尋和替換的文字,然後儲存更新後的文件即可。 IronPDF 非常適合用於修正模板中的錯字或更新資訊,能讓您在 C# 中無縫地進行文字替換。 深入閱讀本指南,提升您在 .NET 環境中的 PDF 處理效率。
簡化工作流程(5 個步驟)
- 下載 IronPDF C# 函式庫
- 渲染新的 PDF 或匯入現有的 PDF 文件
- 使用
ReplaceTextOnAllPages方法來替換文件中的所有文字 - 請指定需替換目標文字的頁碼
- 匯出已編輯的 PDF 文件
如何在 PDF 中替換文字?
replace text 動作可套用至任何 PdfDocument 物件,無論是新渲染或匯入的物件皆可。 請使用 ReplaceTextOnAllPages 方法,同時提供舊文字與新文字以進行替換。 若該方法無法找到指定的舊文字,則會拋出例外,並顯示訊息"替換文字時發生錯誤:找不到文字 '.NET6'。"
在以下程式碼範例中,我們將示範如何在包含文字".NET6"的全新渲染 PDF 文件中替換文字。 此功能在處理 HTML 轉 PDF 轉換,或需要編輯現有 PDF 檔案時特別實用。
基本程式碼的樣貌為何?
:path=/static-assets/pdf/content-code-examples/how-to/find-replace-text-all-page.cs
using 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");
Imports IronPdf
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>.NET6</h1>")
Private oldText As String = ".NET6"
Private newText As String = ".NET7"
' Replace text on all pages
pdf.ReplaceTextOnAllPages(oldText, newText)
pdf.SaveAs("replaceText.pdf")
在應用程式中實作文字替換時,您或許也想考慮為 PDF 檔案添加頁首與頁尾,或套用自訂浮水印,以強化文件的品牌識別與辨識度。
如何將文字替換為換行符?
"替換文字"操作支援換行字元,讓您能將舊文字替換為包含內建換行符號的新字串,以獲得更好的格式與視覺清晰度。 當您需要維持正確的文件結構,或處理多行文字內容時,此功能至關重要。 為達成此目標,請在新字串中加入換行字元 (\n)。 請參照上述範例,將 newText 替換為 .NET7\nnewline,而非僅替換為 .NET7。 此方法可與 IronPDF 提供的各種渲染選項無縫整合。
如何替換指定頁面的文字?
為了更精確地替換文件內的文字,IronPDF 提供在單一頁面或多頁面上替換文字的選項。 請使用 ReplaceTextOnPage 方法替換特定頁面的文字,並使用 ReplaceTextOnPages 方法替換多個指定頁面的文字。 這種細緻的控制功能在處理複雜的 PDF 表單或各頁面內容不盡相同的文件時,特別有用。
如何在單一頁面中替換文字?
:path=/static-assets/pdf/content-code-examples/how-to/find-replace-text-on-single-page.cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>.NET6</h1>");
string oldText = ".NET6";
string newText = ".NET7";
// Replace text on page 1
pdf.ReplaceTextOnPage(0, oldText, newText);
pdf.SaveAs("replaceTextOnSinglePage.pdf");
Imports IronPdf
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>.NET6</h1>")
Private oldText As String = ".NET6"
Private newText As String = ".NET7"
' Replace text on page 1
pdf.ReplaceTextOnPage(0, oldText, newText)
pdf.SaveAs("replaceTextOnSinglePage.pdf")
如何在多個頁面上替換文字?
:path=/static-assets/pdf/content-code-examples/how-to/find-replace-text-on-multiple-pages.cs
using IronPdf;
string html = @"<p> .NET6 </p>
<p> This is 1st Page </p>
<div style = 'page-break-after: always;'></div>
<p> This is 2nd Page</p>
<div style = 'page-break-after: always;'></div>
<p> .NET6 </p>
<p> This is 3rd Page</p>";
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
string oldText = ".NET6";
string newText = ".NET7";
int[] pages = { 0, 2 };
// Replace text on page 1 & 3
pdf.ReplaceTextOnPages(pages, oldText, newText);
pdf.SaveAs("replaceTextOnMultiplePages.pdf");
Imports IronPdf
Private html As String = "<p> .NET6 </p>
<p> This is 1st Page </p>
<div style = 'page-break-after: always;'></div>
<p> This is 2nd Page</p>
<div style = 'page-break-after: always;'></div>
<p> .NET6 </p>
<p> This is 3rd Page</p>"
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf(html)
Private oldText As String = ".NET6"
Private newText As String = ".NET7"
Private pages() As Integer = { 0, 2 }
' Replace text on page 1 & 3
pdf.ReplaceTextOnPages(pages, oldText, newText)
pdf.SaveAs("replaceTextOnMultiplePages.pdf")
處理多頁文件時,請考慮在文字替換操作後實施 PDF 壓縮以優化檔案大小,特別是在處理大型文件或批次處理情境時。
如何在替換文字時使用自訂字型?
ReplaceTextOnPage 方法也允許您使用自訂字型和字型大小。首先,將字型加入 PDF 檔案中,然後將字型名稱作為參數傳遞給該方法。 在以下範例中,我使用 Pixelify Sans 字型。 在維持品牌一致性,或處理國際語言及 UTF-8 支援時,自訂字型實作尤為重要。
自訂字型實作需要哪些步驟?
:path=/static-assets/pdf/content-code-examples/how-to/find-replace-text-custom-font.cs
using IronPdf;
using System.IO;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Use custom font .NET6</h1>");
string oldText = ".NET6";
string newText = ".NET7";
// Add custom font
byte[] fontByte = File.ReadAllBytes(@".\PixelifySans-VariableFont_wght.ttf");
var pdfFont = pdf.Fonts.Add(fontByte);
// Use custom font
pdf.ReplaceTextOnPage(0, oldText, newText, pdfFont, 24);
pdf.SaveAs("replaceCustomText.pdf");
Imports IronPdf
Imports System.IO
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Use custom font .NET6</h1>")
Private oldText As String = ".NET6"
Private newText As String = ".NET7"
' Add custom font
Private fontByte() As Byte = File.ReadAllBytes(".\PixelifySans-VariableFont_wght.ttf")
Private pdfFont = pdf.Fonts.Add(fontByte)
' Use custom font
pdf.ReplaceTextOnPage(0, oldText, newText, pdfFont, 24)
pdf.SaveAs("replaceCustomText.pdf")
進階文字替換情境
除了基本的文字替換功能外,IronPDF 還提供強大的功能,可應對複雜的應用情境。 在處理範本或動態文件時,請將文字替換功能與其他功能結合使用,例如加蓋文字與圖片,或添加數位簽章。 對於需要批次處理的應用,請在實作文字替換功能時,同步整合非同步與多執行緒功能,以優化同時處理多個 PDF 檔案時的效能。 這在文件處理量至關重要的Enterprise環境中尤為實用。 在替換敏感資訊時,請善用 IronPDF 的遮蔽功能來永久移除機密資料,以確保符合資料保護法規。
常見問題
如何使用 C# 替換 PDF 所有頁面中的文字?
透過 IronPDF,您可以使用 ReplaceTextOnAllPages() 方法輕鬆地在所有頁面中替換文字。只需載入您的 PDF 文件,傳入舊文字和新文字參數來呼叫此方法,然後儲存更新後的文件即可。此功能非常適合批次修正和範本更新。
我可以只替換特定頁面的文字,而不是整個文件嗎?
是的,IronPDF 提供了 ReplaceTextOnPage() 方法,讓您能夠針對特定頁面進行文字替換。這使您能精確控制要修改的頁面,非常適合用於多頁文件的選擇性更新。
如果 PDF 中找不到我要替換的文字,該怎麼辦?
當 IronPDF 無法找到指定要替換的文字時,會拋出例外並顯示明確的錯誤訊息,指出該文字未被找到。這有助於您處理文件中可能不存在搜尋文字的情況。
能否替換包含換行字元的文字?
是的,IronPDF 的文字替換功能完全支援換行字元。您可以將舊文字替換為包含內建換行符號的新字串,從而維持多行內容的正確文件格式與結構。
我可以在由 HTML 建立的 PDF 檔案上使用文字替換功能嗎?
當然可以!IronPDF 的文字替換功能在由 HTML 轉換生成的 PDF 檔案上運作順暢無礙。無論您是從 HTML 建立 PDF,還是匯入現有文件,ReplaceTextOnAllPages() 方法的功能皆完全相同。
在 PDF 中執行文字替換的主要步驟有哪些?
using IronPDF 的流程包含五個簡單步驟:首先,下載並安裝該函式庫。其次,渲染或匯入您的 PDF 文件。第三,使用 ReplaceTextOnAllPages() 進行全文件範圍的修改。第四,可選擇指定頁碼以進行針對性替換。最後,使用 SaveAs() 儲存編輯後的 PDF 文件。

