USO DE IRONPDF

Cómo recortar archivos PDF en C#

Actualizado 19 de abril, 2023
Compartir:

Recortar y recortar páginas PDF es siempre una tarea difícil para los desarrolladores en C#. Dibujar un cuadro de recorte alrededor del área deseada en un documento PDF y luego guardar sólo esa parte no es sencillo. Afortunadamente, existe una solución en la biblioteca IronPDF for .NET en C#.

La biblioteca IronPDF .NET

IronPDF es una biblioteca C# .NET que permite a los desarrolladores crear, editar y manipular archivos PDF. Es muy popular entre los desarrolladores de C# por su capacidad de generación de PDF, que les permite trabajar con archivos PDF sin tener instalado Adobe Acrobat. IronPDF for .NET también permite la conversión entre diferentes formatos como HTML a PDF, URL a PDF y imagen a PDF.

También permite añadir encabezados y pies de página personalizados, firmas digitalesanotaciones y archivos adjuntos contraseñas de usuario y propietario, y otras opciones de seguridad. IronPDF cuenta con un rápido motor Chromium para una experiencia de renderizado superior. También proporciona multihilo y compatibilidad con async.

Requisitos previos

Antes de empezar, Visual Studio 2022 (la última versión) debe descargarse e instalarse. Visual Studio es necesario para crear aplicaciones en C#. La instalación configurará el entorno .NET, tras lo cual el sistema local estará listo para realizar un conversor de PDF a JPG. Puede descargar Visual Studio en enlace.

Instalación de IronPDF

Hay varias formas de instalar IronPDF:

  1. Puede descargar IronPDF desde la solución NuGet Package Manager en su proyecto C#, creado con Visual Studio. Acceda al Gestor de paquetes NuGet a través de Herramientas o haciendo clic con el botón derecho del ratón en el Explorador de soluciones. Busque el paquete IronPDF e instálelo.
  2. Otra forma de instalar IronPDF es descargándolo directamente del sitio web de NuGet.

Recortar archivo PDF usando IronPDF en C#

El siguiente proceso paso a paso le ayudará a recortar una página PDF. No es sencillo, pero podemos recurrir a algunos métodos para lograrlo. Comencemos!

Paso 1: Cargar documento PDF

Para cargar un archivo PDF desde una ubicación local en este proyecto, IronPDF proporciona una función DesdeArchivo presente en el DocumentoPdf clase. El siguiente ejemplo de código muestra cómo abrir un archivo PDF existente:

PdfDocument pdf = PdfDocument.FromFile("Input.pdf");
PdfDocument pdf = PdfDocument.FromFile("Input.pdf");
Dim pdf As PdfDocument = PdfDocument.FromFile("Input.pdf")
VB   C#

El documento cargado es el siguiente:

Cómo recortar un archivo PDF en C#, Figura 1: Un ejemplo de archivo PDF de código de barras

**Un ejemplo de archivo PDF de código de barras

Paso 2: Cargar una página específica de un documento PDF

Ahora que el archivo está abierto para su edición, cree un objeto PdfDocument separado y almacene la página específica que necesita ser recortada utilizando la función Copiar página método. Basta con pasar el índice de la página que hay que recortar. Aquí, el código de ejemplo recortará la primera página del documento PDF.

PdfDocument loadedPage = pdfDocument.CopyPage(0);
PdfDocument loadedPage = pdfDocument.CopyPage(0);
Dim loadedPage As PdfDocument = pdfDocument.CopyPage(0)
VB   C#

Paso 3: Convertir la página PDF cargada en una imagen

En RasterizeToImageFiles permite guardar la página PDF en un archivo de imagen de alta resolución. El siguiente código ayuda a convertir la página seleccionada en una imagen para recortarla.

loadedPage.RasterizeToImageFiles(@"C:\Image\Page_to_be_Cropped.png");
loadedPage.RasterizeToImageFiles(@"C:\Image\Page_to_be_Cropped.png");
loadedPage.RasterizeToImageFiles("C:\Image\Page_to_be_Cropped.png")
VB   C#

Ahora la página se convertirá en un archivo de imagen. La salida es una imagen PNG de alta calidad.

Cómo recortar archivos PDF en C#, Figura 2: El archivo de imagen PNG de alta calidad de salida

Archivo de imagen PNG de alta calidad

Ahora, la página específica está separada del documento original y lista para ser recortada.

Paso 4: Recuperar las dimensiones de la página cargada

Para recortar el PDF, es necesario crear un cuadro de recorte con una anchura y una altura determinadas. Para ello, se creará un nuevo documento utilizando la función Renderizador de PDF cromado clase. Ofrece la opción de personalizar el tamaño de página del PDF según las necesidades, y los datos se dividen uniformemente entre las páginas.

Antes de crear un ChromePdfRenderer, primero, obtenga las dimensiones de la página cargada en el paso 2. A continuación, utilice estas dimensiones al establecer el tamaño de página personalizado para crear un cuadro de recorte. El siguiente ejemplo de código le ayudará a obtener la anchura y la altura de la página:

PdfPagesCollection pages = loadedPage.Pages;
PdfPage pdfPage = pages [0];
//  Dimensiones recuperadas en mm
float width = pdfPage.Width;
float height = pdfPage.Height;
PdfPagesCollection pages = loadedPage.Pages;
PdfPage pdfPage = pages [0];
//  Dimensiones recuperadas en mm
float width = pdfPage.Width;
float height = pdfPage.Height;
Dim pages As PdfPagesCollection = loadedPage.Pages
Dim pdfPage As PdfPage = pages (0)
'  Dimensiones recuperadas en mm
Dim width As Single = pdfPage.Width
Dim height As Single = pdfPage.Height
VB   C#

En primer lugar, recupere el número total de páginas del archivo PDF cargado utilizando PdfPagesCollection. A continuación, pasa esa página a un Página de PDF para obtener los valores de las dimensiones de la página a partir de las propiedades Width y Height de la página. Todo hecho! Ahora vamos al siguiente paso para crear un cuadro de recorte personalizado.

Paso 5: Establecer el tamaño de página PDF personalizado

El siguiente código le ayudará a crear un tamaño de papel PDF personalizado que funcionará como un cuadro de recorte, para recortar el contenido en diferentes segmentos de página.

ChromePdfRenderer pdfRenderer = new ChromePdfRenderer();
pdfRenderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.Custom;
pdfRenderer.RenderingOptions.SetCustomPaperSizeinMilimeters(width, height/4);

pdfRenderer.RenderingOptions.ForcePaperSize = true;
ChromePdfRenderer pdfRenderer = new ChromePdfRenderer();
pdfRenderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.Custom;
pdfRenderer.RenderingOptions.SetCustomPaperSizeinMilimeters(width, height/4);

pdfRenderer.RenderingOptions.ForcePaperSize = true;
Dim pdfRenderer As New ChromePdfRenderer()
pdfRenderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.Custom
'INSTANT VB WARNING: Instant VB cannot determine whether both operands of this division are integer types - if they are then you should use the VB integer division operator:
pdfRenderer.RenderingOptions.SetCustomPaperSizeinMilimeters(width, height/4)

pdfRenderer.RenderingOptions.ForcePaperSize = True
VB   C#

En el código anterior, se crea un ChromePdfRenderer, que se utiliza para crear un nuevo documento PDF. Entonces, el TamañoPdf es Personalizado. Por último, se establece un margen de página personalizado utilizando las dimensiones recuperadas en el paso 4.

Ajuste la anchura a la anchura de la página original y reduzca la altura en 1/4 de la longitud de la página original. Esto hace que la página funcione como una caja de medios con forma de rectángulo para el contenido.

Nota: Puede utilizar ForcePaperSize = true para asegurarse de que se aplica el tamaño personalizado. Para establecer márgenes personalizados, visite esta página ejemplo de código.

Paso 6: Crear un nuevo documento utilizando HTML

Ahora, este paso final creará un nuevo documento utilizando el PDF de tamaño de página personalizado y la imagen que guardó de la página cargada.

var croppedPdf = pdfRenderer.RenderHtmlAsPdf("< src='Page_to_be_Cropped.png'/>", @"C:\Image\");
var croppedPdf = pdfRenderer.RenderHtmlAsPdf("< src='Page_to_be_Cropped.png'/>", @"C:\Image\");
Dim croppedPdf = pdfRenderer.RenderHtmlAsPdf("< src='Page_to_be_Cropped.png'/>", "C:\Image\")
VB   C#

Ahora vamos a guardar el documento utilizando el método Guardar como método.

croppedPdf.SaveAs("Cropped.pdf");
croppedPdf.SaveAs("Cropped.pdf");
croppedPdf.SaveAs("Cropped.pdf")
VB   C#

Salida

Cómo recortar un archivo PDF en C#, Figura 3: El archivo PDF recortado

**El archivo PDF recortado

En la salida, puede ver que una sola imagen se divide ahora en cinco páginas con el cuadro de recorte personalizado creado. Puede copiar una página específica que necesite utilizando el siguiente código:

croppedPdf.CopyPage(1).SaveAs("Cropped.pdf");
croppedPdf.CopyPage(1).SaveAs("Cropped.pdf");
croppedPdf.CopyPage(1).SaveAs("Cropped.pdf")
VB   C#

Conclusión

En este artículo se muestra cómo recortar documentos PDF mediante la creación de un cuadro de recorte rectangular virtual en términos de páginas utilizando IronPDF for .NET Framework. En Rasterizar a archivos de imagen ayuda a convertir la página en una imagen que luego se utiliza para crear un documento PDF con píxeles perfectos.

IronPDF también proporciona otras herramientas PDF que pueden rotar páginas PDF, cambiar texto PDF, establecer márgenes, formatear PDFs, convertirlos y mucho más. Para obtener más información sobre IronPDF for .NET y acceder a funciones adicionales para manipular archivos PDF o cómo establecer un tamaño de página PDF personalizado.

La librería .NET de IronPDF es gratuita para el desarrollo pero necesita ser con licencia para uso comercial. Descargue la potente biblioteca IronPDF for .NET desde aquí enlace para un archivo ZIP del proyecto actual e inténtelo!

< ANTERIOR
PDF Converter .NET (Tutorial para desarrolladores)
SIGUIENTE >
Cómo crear PDF en ASP .NET

¿Listo para empezar? Versión: 2024.7 recién publicada

Descarga gratuita de NuGet Descargas totales: 9,974,197 Ver licencias >
123