Jak zamienić tekst w PDF za pomocą C
Zastąp tekst w plikach PDF za pomocą języka C# i prostego interfejsu API IronPDF — użyj ReplaceTextOnAllPages() w przypadku zmian w całym dokumencie lub ReplaceTextOnPage() w przypadku konkretnych stron. To umożliwia zautomatyzowane poprawki, dostosowywanie szablonów i dynamiczne aktualizacje treści w aplikacjach .NET.
Szybki start: Zamień tekst w PDF z IronPDF
Rozpocznij zamianę tekstu w swoich PDF-ach bez wysiłku przy użyciu IronPDF. Zaledwie kilka linii kodu pozwala szybko aktualizować lub dostosowywać dokumenty. Ten przykład pokazuje, jak zamienić tekst na wszystkich stronach PDF. Po prostu wczytaj swój PDF, określ tekst do znalezienia i zamiany, i zapisz zaktualizowany dokument. Idealne do korekty literówek lub aktualizacji informacji w szablonach, IronPDF sprawia, że zamiana tekstu w C# jest bezproblemowa. Zanurz się w tym przewodniku, aby przekształcić wydajność obsługi PDF w środowiskach .NET.
-
Install IronPDF with NuGet Package Manager
PM > Install-Package IronPdf -
Skopiuj i uruchom ten fragment kodu.
IronPdf.PdfDocument.FromFile("example.pdf") .ReplaceTextOnAllPages("old text", "new text") .SaveAs("updated.pdf"); -
Wdrożenie do testowania w środowisku produkcyjnym
Rozpocznij używanie IronPDF w swoim projekcie już dziś z darmową wersją próbną
Minimalny proces (5 kroków)
- Pobierz bibliotekę C# IronPDF
- Wygeneruj nowy PDF lub zaimportuj istniejący dokument PDF
- Użyj metody
ReplaceTextOnAllPages, aby zamienić tekst w całym dokumencie - Określ numery stron dla celowanej zamiany tekstu
- Eksportuj edytowany dokument PDF
Jak mogę zamienić tekst w PDF?
Akcja replace text może być zastosowana do dowolnego obiektu PdfDocument, zarówno nowo renderowanego, jak i zaimportowanego. Należy użyć metody ReplaceTextOnAllPages, podając zarówno stary, jak i nowy tekst do zastąpienia. Jeśli metoda nie może znaleźć specyfikowanego starego tekstu, zgłasza wyjątek z komunikatem 'Error while replacing text: failed to find text '.NET6'.'
W poniższym przykładzie kodu pokazujemy, jak zamienić tekst w nowo wygenerowanym dokumencie PDF zawierającym tekst '.NET6'. Ta funkcjonalność jest szczególnie przydatna podczas pracy z konwersją HTML do PDF lub gdy musisz edytować istniejące PDF.
Jak wygląda podstawowy kod?
: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")
Podczas wdrażania zamiany tekstu w swoich aplikacjach, możesz także chcieć dodać nagłówki i stopki lub zastosować niestandardowe znaki wodne do swoich PDF-ów, aby wzmocnić identyfikację i markę dokumentu.
Jak zastąpić tekst znakami nowej linii?
Funkcja zamiany tekstu obsługuje znaki nowej linii, co pozwala na zastąpienie starego tekstu nowym ciągiem znaków zawierającym wbudowane znaki nowej linii w celu uzyskania lepszego formatowania i przejrzystości wizualnej. Ta funkcja jest niezbędna, gdy trzeba zachować właściwą strukturę dokumentu lub podczas pracy z treścią tekstową składającą się z wielu wierszy. Aby to osiągnąć, dodaj znaki nowej linii (\n) do nowego ciągu znaków. Korzystając z powyższego przykładu, należy zastąpić newText przez .NET7\nnewline zamiast po prostu .NET7. Takie podejście doskonale współgra z różnymi opcjami renderowania dostępnymi w IronPDF.
Jak zastąpić tekst na określonych stronach?
Aby zapewnić większą dokładność podczas zamiany tekstu w dokumencie, IronPDF oferuje opcje zamiany tekstu na jednej lub wielu stronach. Użyj metody ReplaceTextOnPage, aby zastąpić tekst na konkretnej stronie, oraz metody ReplaceTextOnPages, aby zastąpić tekst na wielu określonych stronach. Ta precyzyjna kontrola jest szczególnie przydatna podczas pracy ze złożonymi formularzami PDF lub dokumentami o zróżnicowanej treści na poszczególnych stronach.
Co zastepuje tekst na jednej stronie?
: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")
Ta funkcja zastępowania pojedynczych stron dobrze integruje się z innymi operacjami dotyczącymi konkretnych stron, takimi jak dodawanie numerów stron lub dzielenie plików PDF w celu modyfikacji wybranych treści.
Jak zastąpić tekst na wielu stronach?
: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")
W przypadku dokumentów wielostronicowych warto rozważyć kompresję plików PDF w celu optymalizacji rozmiarów plików po operacjach zamiany tekstu, zwłaszcza w przypadku dużych dokumentów lub przetwarzania wsadowego.
Jak mogę użyć niestandardowej czcionki podczas zamiany tekstu?
Metoda ReplaceTextOnPage pozwala również na użycie niestandardowej czcionki i rozmiaru. Najpierw dodaj czcionkę do pliku PDF, a następnie przekaż nazwę czcionki jako parametr do metody. W poniższym przykładzie używam czcionki Pixelify Sans. Wdrożenie niestandardowych czcionek jest szczególnie ważne przy zachowaniu spójności marki lub podczas pracy z językami międzynarodowymi i obsługą UTF-8.
Jakie kroki są wymagane do wdrożenia niestandardowej czcionki?
: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")
Zaawansowane scenariusze zamiany tekstu
Oprócz podstawowej zamiany tekstu, IronPDF oferuje zaawansowane możliwości w złożonych scenariuszach. Podczas pracy z szablonami lub dokumentami dynamicznymi należy łączyć zamianę tekstu z innymi funkcjami, takimi jak stemplowanie tekstu i obrazów lub dodawanie podpisów cyfrowych. W przypadku aplikacji wymagających przetwarzania wsadowego należy zaimplementować funkcję zamiany tekstu wraz z możliwościami asynchronicznymi i wielowątkowymi, aby zoptymalizować wydajność podczas jednoczesnego przetwarzania wielu plików PDF. Jest to szczególnie przydatne w środowiskach Enterprise, gdzie przepustowość dokumentów ma kluczowe znaczenie. W przypadku zastępowania informacji wrażliwych warto zapoznać się z funkcjami redagowania IronPDF, które umożliwiają trwałe usunięcie danych poufnych, zapewniając zgodność z przepisami dotyczącymi ochrony danych.
Często Zadawane Pytania
Jak mogę zamienić tekst na wszystkich stronach PDF przy użyciu C#?
Z IronPDF możesz łatwo zamienić tekst na wszystkich stronach używając metody ReplaceTextOnAllPages(). Po prostu załaduj swój dokument PDF, wywołaj tę metodę podając stare i nowe parametry tekstowe i zapisz zaktualizowany dokument. Ta funkcja jest idealna do wsadowych korekt i aktualizacji szablonów.
Czy mogę zamienić tekst tylko na określonych stronach zamiast całego dokumentu?
Tak, IronPDF dostarcza metodę ReplaceTextOnPage(), która pozwala celować w konkretne strony do zamiany tekstu. Daje to precyzyjną kontrolę nad tym, które strony są modyfikowane, co sprawia, że jest idealne dla selektywnych aktualizacji w dokumentach wielostronicowych.
Co się dzieje, jeśli poszukiwany tekst nie zostanie znaleziony w PDF?
Gdy IronPDF nie może zlokalizować określonego tekstu do zamiany, wywołuje wyjątek z jasnym komunikatem o błędzie wskazującym, że tekst nie został znaleziony. To pomaga obsłużyć przypadki, w których tekst poszukiwania może nie istnieć w dokumencie.
Czy można zamienić tekst zawierający znaki nowej linii?
Tak, funkcjonalność zamiany tekstu w IronPDF w pełni obsługuje znaki nowej linii. Możesz zamienić stary tekst na nowe ciągi, które zawierają wbudowane znaki nowej linii, zachowując właściwe formatowanie i strukturę dokumentu dla treści wieloliniowych.
Czy mogę użyć zamiany tekstu na PDF-ach utworzonych z HTML?
Absolutnie! Funkcja zamiany tekstu w IronPDF działa płynnie na PDF-ach generowanych z konwersji HTML. Niezależnie od tego, czy stworzyłeś PDF z HTML, czy zaimportowałeś istniejący dokument, metoda ReplaceTextOnAllPages() działa identycznie.
Jakie są główne kroki do wdrożenia zamiany tekstu w PDF?
Proces obejmuje pięć prostych kroków w IronPDF: Po pierwsze, pobierz i zainstaluj bibliotekę. Po drugie, wyrenderuj lub zaimportuj swój dokument PDF. Po trzecie, użyj ReplaceTextOnAllPages() do zmian w całym dokumencie. Po czwarte, opcjonalnie określ numery stron dla celowej zamiany. Na koniec zapisz edytowany PDF używając SaveAs().

