▷ Extracción de Páginas PDF en C#: Todo lo que Necesitas Saber para Potenciar tu Desarrollo

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:
  • 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. 
Share:

0 comments:

Publicar un comentario