USO DE IRONPDF

Generación de archivos PDF en C#

Publicado en 20 de enero, 2022
Compartir:

A menudo es necesario convertir documentos e informes de Office en documentos PDF a partir de una amplia variedad de formatos, incluido HTML. También podemos necesitar generar archivos PDF a partir de páginas web o URL. Para ello, necesitamos un generador versátil que pueda generar archivos PDF que contengan exactamente el mismo contenido que los archivos HTML originales. En este tutorial, aprenderemos a generar archivos PDF en C#.

¿Qué es IronPDF?

IronPDF .NET PDF Library es reconocida por muchos diseñadores, en particular por los programadores informáticos que utilizan C#. No cabe duda de que podrá crear una biblioteca PDF básica para .NET con esta excepcional herramienta.

IronPDF utiliza un motor .NET Chromium para convertir páginas HTML en documentos PDF. Con HTML a PDF no hay razón para utilizar API complejas para posicionar o planificar PDF. IronPDF mantiene los documentos web estándar: HTML, ASPX, JS, CSS e imágenes.

Además, le permite crear una biblioteca PDF .NET utilizando HTML5, CSS, JavaScript e imágenes. Puede editar, sellar y añadir fácilmente encabezados y pies de página a un PDF. Además, facilita enormementelea contenidos PDF de forma eficaz con IronPDF texto y extraer las imágenes.

IronPDF ofrece una respuesta única para todos los problemas de PDF. Siempre que compre IronPDF, obtendrá todos los cambios en una única biblioteca, además de las tareas relacionadas con los documentos PDF, sin necesidad de condiciones adicionales. IronPDF es un paquete completo y una gran herramienta tanto para diseñadores como para programadores de C#. Con esta útil herramienta podrá crear sin mucho esfuerzo una biblioteca PDF básica para .NET. IronPDF utiliza un motor .NET Chromium para convertir páginas HTML en documentos PDF.

IronPDF nos ayuda a generar archivos PDF a partir de lo siguiente:

  • Cadenas y plantillas HTML
  • Formularios web ASPX
  • Vistas MVC
  • Documentos HTML
  • cualquier URL

Características de IronPDF

IronPDF le ayuda a crear documentos PDF a partir de HTML 4 y 5, CSS y JavaScript y crea archivos PDF a partir de URL. Asimismo, ayuda a cargar URL con acreditaciones de inicio de sesión de red personalizadas, User-Agents, Proxies, Cookies, cabeceras HTTP y variables de formulario que permiten el inicio de sesión detrás de formularios de inicio de sesión HTML. Puede, sin mucho esfuerzo, extraer imágenes y textos de PDF y estampar nuevo contenido HTML en cualquier página PDF actual permitiéndole, además, añadir encabezados y pies de página lógicos o HTML. Puede cargar y extraer fácilmente archivos PDF existentes y combinar y dividir contenidos en documentos PDF. Dispone de una "URL base" personalizada para permitir el acceso a los archivos de activos a través de la web y reconocer HTML codificado en cualquier codificación de documento significativa.(Por defecto UTF-8). Puede simplemente guardar y cargar desde documentos, datos binarios o MemoryStreams y transformar documentos PDF en un elemento PrintDocument e imprimir sin Adobe(con código insignificante) y exportar documentos de registro oficiales con detalles sobre los logros de la API y los errores de depuración en el código fuente.

Compatibilidad

Es compatible con lenguajes .NET como C#, VB.NET Y F#. Es viable en plataformas .NET como .NET 6, 5, Core 2x y 3x, Standard 2 y Framework 4x. Funciona en aplicaciones como Consola, Web y Escritorio, y es compatible con Microsoft Windows, Linux, macOS, Docker y el sistema operativo Azure. Los IDE de IronPDF incorporan Microsoft Visual Studio, JetBrains ReSharper y Rider.

Pasos para generar documentos PDF

En primer lugar, tenemos que crear un nuevo proyecto de Visual Studio. Utilizaré la plantilla Aplicación de consola para esta demostración. Puede utilizar cualquiera según sus necesidades y su elección.

También puede utilizar su proyecto existente en el que desea añadir una herramienta de generación de archivos PDF.

Crear un proyecto de Visual Studio

Abra Microsoft Visual Studio 2019, o cualquier otra versión. Se recomienda la última versión. Haga clic en "Crear nuevo proyecto". Seleccione la aplicación de consola C# para la plantilla de aplicación. Pulse el botón "Siguiente".

Asigna un nombre a tu proyecto. Lo he llamado "C Sharp Generate PDF". Puedes ponerle el nombre que quieras. Haga clic en el botón "Siguiente" y establezca el .NET Framework de destino. He establecido mi .NET Framework de destino en ".NET 5.0", la última versión estable. Haga clic en el botón "Crear". Se creará un nuevo proyecto para usted.

Instalar el paquete NuGet en Visual Studio

Antes de empezar, necesitamos instalar la librería IronPDF. Puede instalarlo utilizando uno de los tres métodos siguientes:

Consola del gestor de paquetes

Escriba el siguiente comando en la consola Package Manager. Descargará e instalará el paquete por ti.

Install-Package IronPdf

Imagen 1

La solución del gestor de paquetes NuGet

También puede instalar la biblioteca de códigos de barras mediante la solución de paquetes NuGet. Sólo tienes que seguir estos pasos:

Haga clic en Herramientas > Gestor de paquetes NuGet > Gestionar paquete NuGet Solución.

Imagen 2

Esto abrirá NuGet Package Manager para usted. Haga clic en "Examinar" y busque IronPDF como se muestra a continuación.

Imagen 3

Haga clic en IronPDF y luego en el botón "Instalado". Esto instalará IronPDF en su proyecto. Ahora puedes utilizar cualquiera de sus funciones en tu proyecto.

Descargar directamente IronPDF ZIP

También puededescargue el paquete ZIP de IronPDF para su integración.

Recuerde añadir esta declaración al principio de cualquier archivo de clase cs que utilice IronPDF:

using IronPdf;
using IronPdf;
Imports IronPdf
VB   C#

Echa un vistazoIronPDF en NuGet para instalación y actualizaciones para obtener más información sobre las actualizaciones de versión y la instalación.

Hay otros paquetes IronPDF NuGet disponibles para implantaciones específicas en Linux, Mac, Azure y AWS, que están documentados en el documentoGuía de instalación avanzada de NuGet para IronPDF.

La biblioteca IronPDF ya está instalada, así que pasemos al siguiente paso.

Generar archivos PDF a partir de cadenas HTML

IronPDF puede generar archivos PDF a partir de texto HTML con bastante facilidad. El siguiente ejemplo ilustra esta capacidad. Utilice esta opción cuando sólo necesite añadir texto sencillo a su archivo PDF.

Añade el siguiente espacio de nombres:

using IronPdf;
using IronPdf;
Imports IronPdf
VB   C#

Utilizando el siguiente ejemplo de código:

var Renderer = new ChromePdfRenderer();
Renderer.RenderHtmlAsPdf("<h1>This is the Tutorial for C# Generate PDF<h1>").SaveAs("GeneratePDF.pdf");
var Renderer = new ChromePdfRenderer();
Renderer.RenderHtmlAsPdf("<h1>This is the Tutorial for C# Generate PDF<h1>").SaveAs("GeneratePDF.pdf");
Dim Renderer = New ChromePdfRenderer()
Renderer.RenderHtmlAsPdf("<h1>This is the Tutorial for C# Generate PDF<h1>").SaveAs("GeneratePDF.pdf")
VB   C#

En el código anterior, he creado un nuevo renderizador ChromePdfRenderer. Luego lo he llamado RenderHtmlAsPdf y luego SaveAs para el resultado.

Salida

Ejecuta el programa. Generará un documento PDF en la carpeta bin del proyecto ya que no hemos especificado la ruta.

Imagen 4

Genere sus primeros archivos PDF

Una vez instalada la biblioteca IronPDF, podemos crear sin esfuerzo un archivo PDF y una página PDF utilizando sólo unas pocas líneas de código. Ahora le ayudaremos a crear su primer documento PDF en C#. Copie el siguiente código y péguelo en su Visual Studio y ejecute el programa.

var PDF = new ChromePdfRenderer();
PdfDocument doc = pdf.RenderHtmlAsPdf("<h1>This is a heading</h1>");
mypdf.SaveAs("FirstPDFDocument.pdf");
var PDF = new ChromePdfRenderer();
PdfDocument doc = pdf.RenderHtmlAsPdf("<h1>This is a heading</h1>");
mypdf.SaveAs("FirstPDFDocument.pdf");
Dim PDF = New ChromePdfRenderer()
Dim doc As PdfDocument = pdf.RenderHtmlAsPdf("<h1>This is a heading</h1>")
mypdf.SaveAs("FirstPDFDocument.pdf")
VB   C#

Después de la ejecución de su proyecto C# habrá un archivo con el nombre "FirstPDFDocument.pdf" en la carpeta bin de su proyecto, haga doble clic en dicho archivo, y el archivo PDF se abrirá en la pestaña del navegador.

Imagen 9

Crear archivos PDF en C# o crear archivos PDF convirtiendo HTML a PDF es sólo cuestión de unas pocas líneas de código utilizando IronPDF.

Generar documento PDF a partir de URL

Crear un archivo PDF en C# utilizando una URL es tan fácil como el ejemplo anterior con sólo estas tres líneas de código, el siguiente código demostrará cómocrear PDF a partir de una URL con IronPDF desde una URL.

using IronPdf;
var Renderer = new IronPdf.ChromePdfRenderer();
// Create a PDF from a URL or local file path
using var PDF = Renderer.RenderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20");
// Export to a file or Stream
pdf.SaveAs("url.pdf");
using IronPdf;
var Renderer = new IronPdf.ChromePdfRenderer();
// Create a PDF from a URL or local file path
using var PDF = Renderer.RenderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20");
// Export to a file or Stream
pdf.SaveAs("url.pdf");
Imports IronPdf
Private Renderer = New IronPdf.ChromePdfRenderer()
' Create a PDF from a URL or local file path
Private PDF = Renderer.RenderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20")
' Export to a file or Stream
pdf.SaveAs("url.pdf")
VB   C#

Este es el resultado del código anterior.

Imagen 10

Otros ejemplos de conversión de sitios complejos populares a PDF.

Imagen 11

Generación de archivos PDF a partir de un archivo HTML

Podemos generar un documento PDF a partir de archivos HTML con imágenes, CSS, formularios, hipervínculos y JavaScript. Utilice este método cuando tenga acceso local al documento fuente.

Este ejemplo se llama RenderHTMLFileAsPdf y devuelve una variable llamada PDF.

Llame a SaveAs para guardar la salida en un archivo PDF.

El siguiente ejemplo de código asume que hay un archivo HTML en la carpeta bin del proyecto.

var Renderer = new ChromePdfRenderer();
var PDF = Renderer.RenderHTMLFileAsPdf("AccountPage.html");
PDF.SaveAs("AccountPdf.pdf");
var Renderer = new ChromePdfRenderer();
var PDF = Renderer.RenderHTMLFileAsPdf("AccountPage.html");
PDF.SaveAs("AccountPdf.pdf");
Dim Renderer = New ChromePdfRenderer()
Dim PDF = Renderer.RenderHTMLFileAsPdf("AccountPage.html")
PDF.SaveAs("AccountPdf.pdf")
VB   C#

HTML de entrada:

Imagen 5

Salida del archivo PDF generado:

Imagen 6

Generar archivos PDF a partir de URL

Podemos generar archivos PDF a partir de páginas web existentes con unas pocas líneas de código C# o VB.NET. Utilice esta opción cuando necesite generar un documento PDF a partir de un sitio web que ya tenga un documento bien formateado.

Llama a RenderUrlAsPdf para descargar el contenido de la página web y poder llamar a SaveAs para guardar el archivo PDF localmente.

var Renderer = new ChromePdfRenderer();
var PDF = Renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Portable_Document_Format");
PDF.SaveAs("wikipedia.pdf");
var Renderer = new ChromePdfRenderer();
var PDF = Renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Portable_Document_Format");
PDF.SaveAs("wikipedia.pdf");
Dim Renderer = New ChromePdfRenderer()
Dim PDF = Renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Portable_Document_Format")
PDF.SaveAs("wikipedia.pdf")
VB   C#

Salida de archivos PDF:

Imagen 7

Generar un documento PDF desde formularios web ASP.NET

Podemos generar un documento PDF a partir de formularios web ASP.NET en lugar de HTML con una sola línea de código. Coloque la línea de código en el método Page_Load del código de la página detrás.

  • Crear una nueva aplicación ASP.NET Web Forms o abrir una existente
  • Instalar el paquete NuGet para la biblioteca IronPDF
  • Importe el espacio de nombres IronPDF utilizando la palabra clave adecuada
  • Abra el código fuente de la página que desea convertir a PDF. Por ejemplo, Default.aspx.cs
  • Escriba el siguiente código dentro de la función de carga de página.
AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.InBrowser);
AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.InBrowser);
AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.InBrowser)
VB   C#

Salida de archivos PDF:

Imagen 8

Generar archivos PDF desde una vista ASP MVC

Podemos generar documentos PDF desde el framework ASP MVC.

Inicie el asistente para nuevos proyectos en Visual Studio y seleccione Aplicación Web ASP.NET(.NET Framework) > MVC. Como alternativa, abra un proyecto MVC existente. Abra el archivo HomeController en la carpeta Controllers y reemplace el método Index, o añada un nuevo controlador.

Este es un ejemplo de cómo debería ser el código:

public ActionResult Index()
{
    var PDF = IronPdf.ChromePdfRenderer.StaticRenderUrlAsPdf(new Uri("https://en.wikipedia.org"));
    return File(PDF.BinaryData, "application/pdf", "Wiki.Pdf");
}
public ActionResult About()
{
    ViewBag.Message = "Your application description page.";
    return View();
}
public ActionResult Contact()
{
    ViewBag.Message = "Your contact page.";
    return View();
}
public ActionResult Index()
{
    var PDF = IronPdf.ChromePdfRenderer.StaticRenderUrlAsPdf(new Uri("https://en.wikipedia.org"));
    return File(PDF.BinaryData, "application/pdf", "Wiki.Pdf");
}
public ActionResult About()
{
    ViewBag.Message = "Your application description page.";
    return View();
}
public ActionResult Contact()
{
    ViewBag.Message = "Your contact page.";
    return View();
}
Public Function Index() As ActionResult
	Dim PDF = IronPdf.ChromePdfRenderer.StaticRenderUrlAsPdf(New Uri("https://en.wikipedia.org"))
	Return File(PDF.BinaryData, "application/pdf", "Wiki.Pdf")
End Function
Public Function About() As ActionResult
	ViewBag.Message = "Your application description page."
	Return View()
End Function
Public Function Contact() As ActionResult
	ViewBag.Message = "Your contact page."
	Return View()
End Function
VB   C#

Salida de archivos PDF:

Imagen 9

Añadir encabezados y pies de página

La propiedad Opciones de impresión permite crear encabezados y pies de página para cada página del archivo PDF. Acceda a estas opciones en el objeto ChromePdfRenderer. Este ejemplo funciona dentro de una aplicación de consola .NET Core.

  • Utilice estas propiedades de plantilla para construir el contenido.

    *{página} {total-páginas} {url} {fecha} {tiempo} {html-title} &{título pdf}

    Escribe el siguiente código:

 var ChromePdfRenderer = new ChromePdfRenderer();
ChromePdfRenderer.RenderingOptions.FirstPageNumber = 1;
//Header options
ChromePdfRenderer.RenderingOptions.TextHeader.DrawDividerLine = true;
ChromePdfRenderer.RenderingOptions.TextHeader.CenterText = "This is Header {date} {time}";
ChromePdfRenderer.RenderingOptions.TextHeader.FontFamily = "Helvetica,Arial";
ChromePdfRenderer.RenderingOptions.TextHeader.FontSize = 12;
//Footer options
ChromePdfRenderer.RenderingOptions.TextFooter.DrawDividerLine = true;
ChromePdfRenderer.RenderingOptions.TextFooter.FontFamily = "Arial";
ChromePdfRenderer.RenderingOptions.TextFooter.FontSize = 10;
ChromePdfRenderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";
ChromePdfRenderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}";
ChromePdfRenderer.RenderHtmlAsPdf("<h1>This is my Sample Page for Generate PDF Tutorial<h1>").SaveAs("GeneratePDF.pdf");
 var ChromePdfRenderer = new ChromePdfRenderer();
ChromePdfRenderer.RenderingOptions.FirstPageNumber = 1;
//Header options
ChromePdfRenderer.RenderingOptions.TextHeader.DrawDividerLine = true;
ChromePdfRenderer.RenderingOptions.TextHeader.CenterText = "This is Header {date} {time}";
ChromePdfRenderer.RenderingOptions.TextHeader.FontFamily = "Helvetica,Arial";
ChromePdfRenderer.RenderingOptions.TextHeader.FontSize = 12;
//Footer options
ChromePdfRenderer.RenderingOptions.TextFooter.DrawDividerLine = true;
ChromePdfRenderer.RenderingOptions.TextFooter.FontFamily = "Arial";
ChromePdfRenderer.RenderingOptions.TextFooter.FontSize = 10;
ChromePdfRenderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";
ChromePdfRenderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}";
ChromePdfRenderer.RenderHtmlAsPdf("<h1>This is my Sample Page for Generate PDF Tutorial<h1>").SaveAs("GeneratePDF.pdf");
Dim ChromePdfRenderer As New ChromePdfRenderer()
ChromePdfRenderer.RenderingOptions.FirstPageNumber = 1
'Header options
ChromePdfRenderer.RenderingOptions.TextHeader.DrawDividerLine = True
ChromePdfRenderer.RenderingOptions.TextHeader.CenterText = "This is Header {date} {time}"
ChromePdfRenderer.RenderingOptions.TextHeader.FontFamily = "Helvetica,Arial"
ChromePdfRenderer.RenderingOptions.TextHeader.FontSize = 12
'Footer options
ChromePdfRenderer.RenderingOptions.TextFooter.DrawDividerLine = True
ChromePdfRenderer.RenderingOptions.TextFooter.FontFamily = "Arial"
ChromePdfRenderer.RenderingOptions.TextFooter.FontSize = 10
ChromePdfRenderer.RenderingOptions.TextFooter.LeftText = "{date} {time}"
ChromePdfRenderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}"
ChromePdfRenderer.RenderHtmlAsPdf("<h1>This is my Sample Page for Generate PDF Tutorial<h1>").SaveAs("GeneratePDF.pdf")
VB   C#

Salida de archivos PDF con encabezado y pie de página

Imagen 10

Añadir encabezados y pies de página con HTML

Podemos añadir texto, fecha, hora y números de página en los encabezados y pies de página de nuestro documento PDF.

var ChromePdfRenderer = new ChromePdfRenderer();
ChromePdfRenderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
{
    Height = 15,
    HtmlFragment = "<center><i>{page} of {total-pages}<i></center>",
    DrawDividerLine = true
};
ChromePdfRenderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
    Height = 20,
    HtmlFragment = "This is Footer {date}",
};
ChromePdfRenderer.RenderHtmlAsPdf("<h1>This is sample page for Tutorial.<h1>").SaveAs("GeneratePDF.pdf");
var ChromePdfRenderer = new ChromePdfRenderer();
ChromePdfRenderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
{
    Height = 15,
    HtmlFragment = "<center><i>{page} of {total-pages}<i></center>",
    DrawDividerLine = true
};
ChromePdfRenderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
    Height = 20,
    HtmlFragment = "This is Footer {date}",
};
ChromePdfRenderer.RenderHtmlAsPdf("<h1>This is sample page for Tutorial.<h1>").SaveAs("GeneratePDF.pdf");
Dim ChromePdfRenderer As New ChromePdfRenderer()
ChromePdfRenderer.RenderingOptions.HtmlFooter = New HtmlHeaderFooter() With {
	.Height = 15,
	.HtmlFragment = "<center><i>{page} of {total-pages}<i></center>",
	.DrawDividerLine = True
}
ChromePdfRenderer.RenderingOptions.HtmlHeader = New HtmlHeaderFooter() With {
	.Height = 20,
	.HtmlFragment = "This is Footer {date}"
}
ChromePdfRenderer.RenderHtmlAsPdf("<h1>This is sample page for Tutorial.<h1>").SaveAs("GeneratePDF.pdf")
VB   C#

Como en el caso anterior, este ejemplo funciona en una aplicación de consola .NET Core. Especifica HTML con la propiedad HtmlFragment.

Imagen 11

Cifrar documentos PDF con contraseña

Podemos generar documentos PDF con contraseñas. Establezca la propiedad "Contraseña" de un documento PDF para cifrarlo y obligar al usuario a introducir la contraseña correcta para ver el documento. Este ejemplo funciona en una aplicación .NET Core Console.

var ChromePdfRenderer = new ChromePdfRenderer();
var pdfDocument = ChromePdfRenderer.RenderHtmlAsPdf("<h1>Hello world<h1>");
pdfDocument.Password = "Password@1234";
pdfDocument.SaveAs("secured.pdf");
var ChromePdfRenderer = new ChromePdfRenderer();
var pdfDocument = ChromePdfRenderer.RenderHtmlAsPdf("<h1>Hello world<h1>");
pdfDocument.Password = "Password@1234";
pdfDocument.SaveAs("secured.pdf");
Dim ChromePdfRenderer As New ChromePdfRenderer()
Dim pdfDocument = ChromePdfRenderer.RenderHtmlAsPdf("<h1>Hello world<h1>")
pdfDocument.Password = "Password@1234"
pdfDocument.SaveAs("secured.pdf")
VB   C#

Salida de archivos PDF:

Imagen 12

Fusionar y dividir documentos PDF

Podemos fusionar varios documentos PDF en un único documento PDF nuevo. Utilice el siguiente código para fusionar y dividir.

var ChromePdfRenderer = new ChromePdfRenderer();
//Join Multiple Existing PDFs into a single document
var pdfDocuments = new List<PdfDocument>();
pdfDocuments.Add(PdfDocument.FromFile("AccountPdf.pdf"));
pdfDocuments.Add(PdfDocument.FromFile("GeneratePDF.pdf"));
pdfDocuments.Add(PdfDocument.FromFile("wikipedia.pdf"));
var mergedPdfDocument = PdfDocument.Merge(pdfDocuments);
mergedPdfDocument.SaveAs("merged.pdf");
//Add a cover page 
mergedPdfDocument.PrependPdf(ChromePdfRenderer.RenderHtmlAsPdf("<h1>Cover Page</h1><hr>"));
//Remove the last page from the PDF and save again
mergedPdfDocument.RemovePage(mergedPdfDocument.PageCount - 1);
mergedPdfDocument.SaveAs("merged.pdf");
//Copy pages 1,2 and save them as a new document.
mergedPdfDocument.CopyPages(1, 2).SaveAs("exerpt.pdf");
var ChromePdfRenderer = new ChromePdfRenderer();
//Join Multiple Existing PDFs into a single document
var pdfDocuments = new List<PdfDocument>();
pdfDocuments.Add(PdfDocument.FromFile("AccountPdf.pdf"));
pdfDocuments.Add(PdfDocument.FromFile("GeneratePDF.pdf"));
pdfDocuments.Add(PdfDocument.FromFile("wikipedia.pdf"));
var mergedPdfDocument = PdfDocument.Merge(pdfDocuments);
mergedPdfDocument.SaveAs("merged.pdf");
//Add a cover page 
mergedPdfDocument.PrependPdf(ChromePdfRenderer.RenderHtmlAsPdf("<h1>Cover Page</h1><hr>"));
//Remove the last page from the PDF and save again
mergedPdfDocument.RemovePage(mergedPdfDocument.PageCount - 1);
mergedPdfDocument.SaveAs("merged.pdf");
//Copy pages 1,2 and save them as a new document.
mergedPdfDocument.CopyPages(1, 2).SaveAs("exerpt.pdf");
Dim ChromePdfRenderer As New ChromePdfRenderer()
'Join Multiple Existing PDFs into a single document
Dim pdfDocuments = New List(Of PdfDocument)()
pdfDocuments.Add(PdfDocument.FromFile("AccountPdf.pdf"))
pdfDocuments.Add(PdfDocument.FromFile("GeneratePDF.pdf"))
pdfDocuments.Add(PdfDocument.FromFile("wikipedia.pdf"))
Dim mergedPdfDocument = PdfDocument.Merge(pdfDocuments)
mergedPdfDocument.SaveAs("merged.pdf")
'Add a cover page 
mergedPdfDocument.PrependPdf(ChromePdfRenderer.RenderHtmlAsPdf("<h1>Cover Page</h1><hr>"))
'Remove the last page from the PDF and save again
mergedPdfDocument.RemovePage(mergedPdfDocument.PageCount - 1)
mergedPdfDocument.SaveAs("merged.pdf")
'Copy pages 1,2 and save them as a new document.
mergedPdfDocument.CopyPages(1, 2).SaveAs("exerpt.pdf")
VB   C#

Utilice la función "Fusionar" para unir varios archivos PDF, o "CopiarPáginas" para dividir varias páginas de un documento existente. Incluya los PDF en su proyecto como "Contenido" para acceder a ellos por nombre de archivo.

Imagen 13

Extraer imágenes de documentos PDF

Esta función requiere un paquete NuGet adicional. Instalar System.Drawing.Common. Utilice la función ExtractAllText para obtener texto y la función ExtractAllImages para obtener imágenes.

var ChromePdfRenderer = new ChromePdfRenderer();
var pdfDocument = PdfDocument.FromFile("wikipedia.pdf");
//Get all text
var allText = pdfDocument.ExtractAllText();
//Get all Images
var allImages = pdfDocument.ExtractAllImages();

//Or even find the images and text by page
for (var index = 0; index < pdfDocument.PageCount; index++)
{
    var pageNumber = index + 1;
    var pageText = pdfDocument.ExtractTextFromPage(index);
    var pageImages = pdfDocument.ExtractImagesFromPage(index);
}
var ChromePdfRenderer = new ChromePdfRenderer();
var pdfDocument = PdfDocument.FromFile("wikipedia.pdf");
//Get all text
var allText = pdfDocument.ExtractAllText();
//Get all Images
var allImages = pdfDocument.ExtractAllImages();

//Or even find the images and text by page
for (var index = 0; index < pdfDocument.PageCount; index++)
{
    var pageNumber = index + 1;
    var pageText = pdfDocument.ExtractTextFromPage(index);
    var pageImages = pdfDocument.ExtractImagesFromPage(index);
}
Dim ChromePdfRenderer As New ChromePdfRenderer()
Dim pdfDocument = PdfDocument.FromFile("wikipedia.pdf")
'Get all text
Dim allText = pdfDocument.ExtractAllText()
'Get all Images
Dim allImages = pdfDocument.ExtractAllImages()

'Or even find the images and text by page
For index = 0 To pdfDocument.PageCount - 1
	Dim pageNumber = index + 1
	Dim pageText = pdfDocument.ExtractTextFromPage(index)
	Dim pageImages = pdfDocument.ExtractImagesFromPage(index)
Next index
VB   C#

Necesitas añadir System.Drawing para guardar imágenes como bitmap.

Activar JavaScript

Podemos activar JavaScript en nuestro navegador utilizando IronPDF. El siguiente ejemplo de código nos muestra cómo activar JavaScript en nuestro navegador web.

var ChromePdfRenderer = new ChromePdfRenderer();
ChromePdfRenderer.RenderingOptions = new ChromePdfRenderer()
{
    EnableJavaScript = true,
    RenderDelay = 100
}               
var ChromePdfRenderer = new ChromePdfRenderer();
ChromePdfRenderer.RenderingOptions = new ChromePdfRenderer()
{
    EnableJavaScript = true,
    RenderDelay = 100
}               
Dim ChromePdfRenderer As New ChromePdfRenderer()
ChromePdfRenderer.RenderingOptions = New ChromePdfRenderer() With {
	.EnableJavaScript = True,
	.RenderDelay = 100
}
VB   C#

OCR de PDF y extracción de texto

En muchos casos, puede extraer texto incrustado de documentos PDF directamente.

Escribe el siguiente código:

PdfDocument PDF = PdfDocument.FromFile("GeneratePDF.pdf");
//Get all text 
string Text = PDF.ExtractAllText();
PdfDocument PDF = PdfDocument.FromFile("GeneratePDF.pdf");
//Get all text 
string Text = PDF.ExtractAllText();
Dim PDF As PdfDocument = PdfDocument.FromFile("GeneratePDF.pdf")
'Get all text 
Dim Text As String = PDF.ExtractAllText()
VB   C#

Si esto no funciona, probablemente se deba a que el texto está incrustado en una imagen.

Utilice la biblioteca IronOCR para escanear documentos en busca de texto visual que no sea texto plano.

Resumen

Puede generar documentos PDF, manipularlos y darles el formato que desee con sólo unas líneas de código. Basta con especificar las operaciones y IronPDF las tendrá. También existe una versión gratuita para desarrollo y una versión de prueba gratuita antes de la compra. Existen otras bibliotecas de generación de PDF en el mercado, pero muchas son lentas en términos de rendimiento o exigen pagar por su desarrollo.

La biblioteca IronPDF .NET ya está disponible con Iron Suite for .NET. Iron Suite contiene otras librerías .NET como la librería IronXL, la librería IronOCR, la librería IronBarcode, etc. Estas otras bibliotecas son muy útiles para los desarrolladores, por lo que se recomienda probarlas. Si adquiere la Iron Suite completa, podrá obtener los cinco productos por el precio de sólo dos. Para más información, pulseInformación sobre IronPDF Suite.

Puede descargar un proyecto de archivo desde aquíProyecto tutorial de generación de PDF con C# IronPDF.

< ANTERIOR
x509certificate2 Añadir firma digital a PDF mediante programación
SIGUIENTE >
Crear PDF en C# a partir de un archivo HTML

¿Listo para empezar? Versión: 2024.12 acaba de salir

Descarga gratuita de NuGet Descargas totales: 11,622,374 Ver licencias >