如何替換 PDF 中的文字

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

由 Curtis Chau

在 PDF 中替換文本非常方便,可快速準確地編輯內容。 它非常適合修正錯字、更新資訊或根據特定需求調整模板。 這個功能能實時節省大量時間,特別是針對需要頻繁更新或個性化處理的文件。

IronPDF 提供PDF的文本替換功能,使其成為開發人員和專業人士不可或缺的工具,旨在自動化或自定義PDF內容。

立即在您的專案中使用IronPDF,並享受免費試用。

第一步:
green arrow pointer

替換文字範例

要替換文字,我們可以簡單地呼叫 replaceText 方法。 該方法需要三個參數:第一個是 PageSelection,用於指定頁面; 第二個是代表舊文本的字串; 而第三個是新文本。 在以下範例中,我們將呼叫 PageSelection.firstPage 方法,這個方法會獲取 PDF 的第一頁。 我們將把所有 '.NET6' 替換為 '.NET7'。

如果方法無法找到指定的舊文本,您將遇到執行時異常。

替代文字

代碼

import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.edit.PageSelection;

import java.io.IOException;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) throws IOException {
        License.setLicenseKey("IRONPDF-MYLICENSE-KEY-1EF01");

        PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>.NET6</h1>");

        String oldText = ".NET6";
        String newText = ".NET7";

        // Replace text
        pdf.replaceText(PageSelection.firstPage(), oldText, newText);
        pdf.saveAs("replaceText.pdf");
    }
}
JAVA

提示
所有頁面索引均遵循基於零的索引。

輸出 PDF


替換多頁上的文本

我們使用相同的 replaceText 方法來替換多個頁面上的文字。 但這次,我們從 PageSelection 類別調用 pageRange 方法,並輸入一個整數數組來指定我們只想替換第一頁和第三頁的文字。

import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.edit.PageSelection;

import java.io.IOException;
import java.nio.file.Paths;
import java.util.Arrays;
import java.util.List;

public class App {
    public static void main(String[] args) throws IOException {
        License.setLicenseKey("IRONPDF-MYLICENSE-KEY-1EF01");

        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>";

        PdfDocument pdf = PdfDocument.renderHtmlAsPdf(html);

        String oldText = ".NET6";
        String newText = ".NET7";
        // Replace text on page 1 & 3
        List<Integer> pages = Arrays.asList(0, 2);

        // Replace text
        pdf.replaceText(PageSelection.pageRange(pages), oldText, newText);
        pdf.saveAs("replaceTextOnMultiplePages.pdf");
    }
}
JAVA

輸出 PDF


探索 PageSelection 類別

如同上面的例子,使用 Pageselection 方法讓開發人員可以指定要在哪些頁面上替換文本。 以下是參數的完整列表。

[{我(由於 PageSelection 類別是靜態的,因此不需要建立新實例即可使用其方法。

頁面索引從0開始。)}]

  • allPages:選擇 PDF 所有頁面的方法。
  • firstPage:選擇 PDF 第一頁的方法。
  • lastPage: 選取 PDF 最後一頁的方法。
  • pageRange​(int startIndex, int endIndex):這是一個方法,它接受 startIndex 和 endIndex,用於選擇頁數。 例如,設定 startIndex = 0endIndex = 2 時,將選擇第 1 至第 3 頁。
  • pageRange​(清單page清單):指定要選擇哪些頁面的方法; 從上述範例來看,如果列表只包含整數 0 和 2,該方法只會選擇第一頁和第三頁,並跳過第二頁。
  • 單頁(int 頁索引):指定 PDF 單頁的方法。 請提供要翻譯的內容。