Cómo sustituir texto en un PDF

por Chaknith Bin

La función de reemplazar texto en un PDF es extremadamente útil para realizar ediciones rápidas y precisas del contenido, como corregir errores tipográficos, actualizar información o personalizar plantillas para distintos fines. Esto puede ahorrar una cantidad significativa de tiempo y esfuerzo, especialmente cuando se trata de documentos que requieren revisiones o personalizaciones frecuentes.

IronPDF ofrece una función para sustituir texto en los PDF. Esta función convierte a IronPDF en una herramienta inestimable para desarrolladores y profesionales que necesitan automatizar o personalizar contenidos PDF.


Biblioteca NuGet C# para PDF

Instalar con NuGet

Install-Package IronPdf
o
Java PDF JAR

Descargar DLL

Descargar DLL

Instalar manualmente en su proyecto

Ejemplo de sustitución de texto

La acción 'reemplazar texto' puede aplicarse a cualquier objeto PdfDocument, ya sea recién renderizado o importado. Puede utilizar el método ReplaceTextOnAllPages proporcionando tanto el texto antiguo como el nuevo para su sustitución. Si el método no puede localizar el texto antiguo especificado, lanzará una excepción con el mensaje 'Error al reemplazar el texto: no se pudo encontrar el texto '.NET6''.

En el siguiente ejemplo de código, demostramos cómo reemplazar texto en un documento PDF recién renderizado que contiene el texto '.NET6'.

Código

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

//  Sustituir texto en todas las páginas
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"

'  Sustituir texto en todas las páginas
pdf.ReplaceTextOnAllPages(oldText, newText)

pdf.SaveAs("replaceText.pdf")
VB   C#

Reemplazar texto en páginas especificadas

Para una mayor precisión en el reemplazo de texto dentro de un documento, IronPDF también ofrece opciones para reemplazar texto en una o varias páginas, según sus necesidades. Puede utilizar el método ReplaceTextOnPage para reemplazar texto en una página específica y el método ReplaceTextOnPages para reemplazar texto en varias páginas especificadas del documento.

Consejo
Todos los índices de páginas siguen una indexación basada en cero.

Reemplazar texto en una sola página

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

//  Sustituir el texto de la página 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"

'  Sustituir el texto de la página 1
pdf.ReplaceTextOnPage(0, oldText, newText)

pdf.SaveAs("replaceTextOnSinglePage.pdf")
VB   C#

Reemplazar texto en varias páginas

: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 };

//  Sustituir el texto de las páginas 1 y 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 }

'  Sustituir el texto de las páginas 1 y 3
pdf.ReplaceTextOnPages(pages, oldText, newText)

pdf.SaveAs("replaceTextOnMultiplePages.pdf")
VB   C#

Salida PDF

Chaknith Bin

Ingeniero de software

Chaknith es el Sherlock Holmes de los desarrolladores. La primera vez que se le ocurrió que podría tener futuro en la ingeniería de software fue cuando hacía retos de código por diversión. Su trabajo se centra en IronXL e IronBarcode, pero se enorgullece de ayudar a los clientes con todos los productos. Chaknith aprovecha sus conocimientos, adquiridos hablando directamente con los clientes, para ayudar a mejorar los propios productos. Sus comentarios anecdóticos van más allá de los tickets de Jira y apoyan el desarrollo de productos, la documentación y el marketing, para mejorar la experiencia general del cliente.Cuando no está en la oficina, se le puede encontrar aprendiendo sobre aprendizaje automático, codificación y senderismo.