Vamos a agregar una tabla de datos a un documento PDF usando la librería ITextSharp y el lenguaje C# .NET.
Ya hablamos de la librería iTextSharp y explicamos los aspectos básicos en el articulo Crear un PDF con ItextSharp y C# .NET ahora vamos a continuar y agregaremos una tabla para mostrar datos.
Código
Para crear una tabla con la librería iTextSharp usamos el siguiente código básico:
PdfPTable table = new PdfPTable(6); // Esta es la primera fila table.AddCell("Folio"); table.AddCell("Nombre"); table.AddCell("Domicilio"); table.AddCell("Email"); table.AddCell("Telefono"); table.AddCell("Movil"); // Segunda fila table.AddCell("#1"); table.AddCell("Agustin Ramos"); table.AddCell("Mexico"); table.AddCell("evilnapsis@gmail.com"); table.AddCell("9371331142"); table.AddCell("000000000"); doc.Add(table);
En la linea 1 creamos la tabla y le asignamos un numero de 6 columnas, esto quiere decir que cada fila constara de 6 columnas.
Entonces, en la linea 3 agregamos la primera columna y las fila se crea automáticamente, lo que debemos saber es que podemos agregar tantas filas como queramos y las filas se van a crear automáticamente, solo, tenemos que hacer coincidir los datos con el orden de las columnas.
A continuación les dejo el código fuente completo, desde crear y abrir el documento hasta cerrarlo.
// Inicializamos el documento PDF Document doc = new Document(); PdfWriter.GetInstance(doc, new FileStream("hola.pdf", FileMode.Create)); // asignamos el nombre de archivo hola.pdf // Importante Abrir el documento doc.Open(); // Creamos un titulo personalizado con tamaño de fuente 18 y color Azul Paragraph title = new Paragraph(); title.Font = FontFactory.GetFont(FontFactory.TIMES,18f,BaseColor.BLUE); title.Add("Crear una tabla en PDF con iTextSharp"); doc.Add(title); // Agregamos un parrafo vacio como separacion. doc.Add(new Paragraph(" ")); // Empezamos a crear la tabla, definimos una tabla de 6 columnas PdfPTable table = new PdfPTable(6); // Esta es la primera fila table.AddCell("Folio"); table.AddCell("Nombre"); table.AddCell("Domicilio"); table.AddCell("Email"); table.AddCell("Telefono"); table.AddCell("Movil"); // Segunda fila table.AddCell("#1"); table.AddCell("Agustin Ramos"); table.AddCell("Mexico"); table.AddCell("evilnapsis@gmail.com"); table.AddCell("9371331142"); table.AddCell("000000000"); // Tercera fila table.AddCell("#2"); table.AddCell("Jennifer Janice Jimenez"); table.AddCell("Mexico"); table.AddCell(""); table.AddCell(""); table.AddCell("111111"); // Cuarta fila table.AddCell("#3"); table.AddCell(""); table.AddCell(""); table.AddCell(""); table.AddCell(""); table.AddCell(""); // Agregamos la tabla al documento doc.Add(table); // Ceramos el documento doc.Close();
Una vez cerrado el documento, se guarda en la ubicación que le asignamos, en la linea donde asignamos el nombre, podemos colocar una ubicación absoluta o bien, con solo escribir el nombre del archivo, este se guardara en la misma ubicación del ejecutable.