How to Replace Text in a PDF

This article was translated from English: Does it need improvement?
Translated
View the article in English

在 PDF 中替換文字的功能非常有用,可以快速而精確地編輯內容,例如更正錯別字、更新資訊,或者為不同目的自訂範本。 這可以節省大量時間和精力,特別是在處理需要頻繁修訂或個性化的文件時。

IronPDF 提供了在 PDF 中替換文字的功能。 這項功能使 IronPDF 成為開發人員和需要自動化或自訂 PDF 內容的專業人士不可或缺的工具。

作為標題:2(快速入門: 使用 IronPDF 替換 PDF 中文字)

使用 IronPDF 輕鬆開始在您的 PDF 中替換文字。 只需幾行程式碼,就可以快速更新或自訂您的文件。 本範例展示如何在 PDF 的所有頁面中替換文字。 只需載入您的 PDF,指定要查找和替換的文字,然後保存更新的文件。 完美適用於更正錯別字或更新範本中的資訊,IronPDF 使在 C# 中替換文字成為無縫體驗。 深入了解本指南,以提升您在 .NET 環境中處理 PDF 的效率。

Nuget IconGet started making PDFs with NuGet now:

  1. Install IronPDF with NuGet Package Manager

    PM > Install-Package IronPdf

  2. Copy and run this code snippet.

    IronPdf.PdfDocument.FromFile("example.pdf")
        .ReplaceTextOnAllPages("old text", "new text")
        .SaveAs("updated.pdf");
  3. Deploy to test on your live environment

    Start using IronPDF in your project today with a free trial
    arrow pointer
class="hsg-featured-snippet">

最小工作流程(5步驟)

  1. 下載 IronPDF C# 庫
  2. 渲染新的 PDF 或導入現有的 PDF 文件
  3. 使用 ReplaceTextOnAllPages 方法替換整個文件的文字
  4. 指定目標文字替換的頁面號
  5. 導出編輯過的 PDF 文件


替換文字實例

'替換文字' 動作可以應用於任何 PdfDocument 對象,無論是新渲染的還是導入的。 您可以通過提供舊文字和新文字來利用 ReplaceTextOnAllPages 方法進行替換。 如果該方法無法找到指定的舊文字,它將拋出異常,消息為 '替換文字時出錯:未找到文字 '.NET6'。'

在下面的程式碼示例中,我們展示如何在一個包含文字 '.NET6' 的新渲染 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")
$vbLabelText   $csharpLabel

使用換行符替換文字

替換文字操作支持換行符,允許您用包含內建換行符的字符串來替換舊文字,以獲得更好的格式和視覺清晰度。

要實現這一點,請在新字符串中添加換行符(\n)。 使用上面的示例,相較於僅使用 .NET7,我們用 .NET7\n換行 來替換 newText


在指定頁面上替換文字

為了更準確地在文件中替換文字,IronPDF 也提供了按照您的需求在單個頁面或多個頁面上替換文字的選項。 您可以使用 ReplaceTextOnPage 方法在特定頁面上替換文字,或使用 ReplaceTextOnPages 方法在文件的多個指定頁面上替換文字。

提示所有頁碼皆採用0為起始的索引方式。

在單個頁面上替換文字

: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")
$vbLabelText   $csharpLabel

在多個頁面上替換文字

: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")
$vbLabelText   $csharpLabel

輸出PDF


使用自定義字體

相同的 ReplaceTextOnPage 方法還允許您使用自定義字體和大小。首先,需要將字體添加到 PDF 中,之後即可將字體名稱作為參數傳遞給該方法。 在以下示例中,我將使用 Pixelify Sans 字體

: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")
$vbLabelText   $csharpLabel

結果

class="content-img-align-center">
class="center-image-wrapper"> 使用自定義字體

常見問題解答

如何使用 C# 替換 PDF 中的文字?

您可以使用 IronPDF 透過ReplaceTextOnAllPages方法取代 PDF 文件中的文字。如果需要替換特定頁面上的文本,請使用ReplaceTextOnPageReplaceTextOnPages方法。

我可以將PDF中的文字替換為包含換行符號的新內容嗎?

是的,IronPDF 支援以包含換行符號的新內容取代文字。您可以在替換文字中包含換行符,以改善 PDF 文件的格式和清晰度。

如果在替換過程中找不到我指定的文本,我該怎麼辦?

如果ReplaceTextOnAllPages方法找不到指定的舊文本,則會引發異常並顯示錯誤訊息。請確保正確指定要替換的文本,並且該文本存在於文件中。

在PDF文件中替換文字時,是否可以使用自訂字體?

是的,您可以使用 IronPDF 在替換 PDF 中的文字時使用自訂字體。首先,將所需的字體新增至 PDF 中,然後在ReplaceTextOnPage方法中將字體名稱指定為參數。

我可以在哪裡下載用於替換 PDF 文件中文字的 IronPDF 庫?

您可以從 NuGet 套件管理器下載 IronPDF C# 庫,網址為 https://www.nuget.org/packages/IronPdf/。

文字替換後,編輯後的PDF將以什麼格式儲存?

使用 IronPDF 取代 PDF 中的文字後,可以使用SaveAs方法將修改過的文件儲存為標準 PDF 格式。

如何替換PDF文件中多個特定頁面上的文字?

若要替換 PDF 檔案中多個特定頁面上的文本,請使用 IronPDF 的ReplaceTextOnPages方法。此方法允許您使用從零開始的頁面索引來指定要替換文字的頁面。

使用尋找和取代文字功能時,IronPDF 是否與 .NET 10 完全相容?

是的。 IronPDF 完全相容於 .NET 10,其尋找和取代文字功能(例如ReplaceTextOnAllPagesReplaceTextOnPage及相關方法)可在 .NET 10 專案中無縫運行,無需任何變通方法。 ([ironpdf.com](https://ironpdf.com/blog/net-help/net-10-features/?utm_source=openai))

Chaknith Bin
軟體工程師
Chaknith 在 IronXL 和 IronBarcode 上工作。他對 C# 和 .NET 擁有深厚的專業知識,幫助改進了軟體並支持客戶。他從用戶互動中得到的見解有助於改善產品、文檔和整體體驗。
準備好開始了嗎?
Nuget 下載 16,154,058 | 版本: 2025.11 剛剛發布