La manipulación de archivos PDF es una tarea frecuente en el desarrollo de software, y extraer páginas específicas de un PDF puede ser esencial en muchos escenarios. En este artículo, exploraremos a fondo cómo realizar esta tarea utilizando C# sin la necesidad de código, proporcionando información valiosa y consejos prácticos para mejorar tus habilidades de desarrollo.
¿Por qué Extraer Páginas PDF?
Antes de sumergirnos en los detalles técnicos, es esencial comprender por qué puede ser necesario extraer páginas de un documento PDF. Algunas situaciones comunes incluyen la necesidad de crear vistas previas, generar informes específicos o dividir un documento grande en secciones más manejables. Independientemente de la razón, la capacidad de extraer páginas PDF de manera eficiente puede potenciar significativamente tus aplicaciones.
Herramienta Principal: PDFSharp
Para abordar la extracción de páginas PDF en C#, utilizaremos la popular librería PDFSharp. Esta herramienta de código abierto es ampliamente utilizada en el desarrollo .NET y facilita la manipulación de documentos PDF. Asegúrate de tener iTextSharp instalado en tu proyecto antes de comenzar.
Para este ejemplo utilizaremos la libreria gratuita llamada PDFSharp, es un componente OpenSource y es desarrollada en Visual Studio C#.
La cual la podemos descargar a travez de la siguiente URL:
La cual la podemos descargar a travez de la siguiente URL:
- http://sourceforge.net/projects/pdfsharp/files/pdfsharp
¿Cómo separar paginas PDF en archivos con PDFSharp (C#)?
Vamos al grano, para utilizar el siguiente código, cree un nuevo proyecto, por ejemplo Aplicación Windows Forms de C#. Dentro del proyecto agregue la referencia del componente descargado PdfSharp.dll
Agregamos los Using
using
System;
using
System.Collections.Generic;
using
System.ComponentModel;
using
System.Data;
using
System.Drawing;
using
System.Linq;
using
System.Text;
using
System.Windows.Forms;
using
Captura_Fuid.Clases;
using
System.IO;
using
PdfSharp.Pdf.IO;
using
PdfSharp.Pdf;
private void SplitPDF()
{
string
sPath;// = Directory.GetCurrentDirectory();
string
sNameFile = string.Empty;
string
sPathF = string.Empty;
string
Destino = string.Empty;
string
sPathLocal = string.Empty;
if
(dt.Rows.Count > 0)
{
//Ruta
en donde quedaran los archivos PDF
sPathLocal =
ConfigurationManager.AppSettings["PathVisorFuid"].ToString();
Destino =
ConfigurationManager.AppSettings["PathDestino"].ToString();
//Objeto
que tiene el archivo de salida
PdfSharp.Pdf.PdfDocument Outpdf
= new PdfSharp.Pdf.PdfDocument();
//objeto
que contiene el archivo de entrada con todas las paginas
PdfSharp.Pdf.PdfDocument
Inputpdf = PdfReader.Open(Destino, PdfDocumentOpenMode.Import);
//Consulto
cuantas paginas tiene el archivo
int
count = Inputpdf.PageCount;
int
Fila = 0;
for
(int idx = 0; idx < count; idx++)
{
Outpdf = new PdfSharp.Pdf.PdfDocument();
//Se
extrae la pagina
PdfPage page =
Inputpdf.Pages[idx];
//Se
agrega la pagina al objeto document de salida
Outpdf.AddPage(page);
Fila = idx + 1;
//Para
este ejemplo se arma el nmbre del archivo
sNameFile = "Page_" + Fila + ".pdf";
sPathF = sPathLocal + sPath
+ "/" + sNameFile;
if
(!File.Exists(sPathF))
{
Outpdf.Save(sPathF);
}
}
}
}
La extracción de páginas PDF en C# es una tarea valiosa en el desarrollo de software, y la librería PDFSharp facilita enormemente este proceso. Al seguir los pasos mencionados y aplicar los consejos prácticos, podrás mejorar la eficiencia de tus aplicaciones y brindar una mejor experiencia a nuestros clientes y usuarios.
0 comments:
Publicar un comentario