Crear tabla en archivos PDF en C# .NET

Las tablas se utilizan para representar datos en forma de filas y columnas. Una tabla permite a los lectores revisar los datos rápidamente sin leer mucho texto. Al generar los archivos PDF mediante programación, a menudo puede encontrarse con el requisito de crear tablas. De acuerdo con eso, este artículo cubre cómo crear una tabla en archivos PDF en C# .NET.

C# .NET API para crear una tabla en PDF - Descarga gratuita

Usaremos Aspose.PDF for .NET para crear tablas en archivos PDF. La API está diseñada para realizar la generación y manipulación de PDF dentro de las aplicaciones .NET. Le permite crear archivos PDF de diseños simples y complejos sin problemas. Puede descargar los archivos binarios de la API o instalarlos mediante NuGet.

PM> Install-Package Aspose.PDF

Crear una tabla en un PDF en C#

Puede crear tablas en un archivo PDF nuevo o existente utilizando Aspose.PDF for .NET. Los siguientes son los pasos para crear una tabla en un archivo PDF en C#.

El siguiente ejemplo de código muestra cómo crear una tabla en un archivo PDF usando C#.

// Crear documento PDF (para cargar el archivo existente, inicialice el objeto Documento con la ruta del archivo)
Document document = new Document();
            
// Añadir página
Aspose.Pdf.Page page = document.Pages.Add();

// Inicializa una nueva instancia de la tabla.
Aspose.Pdf.Table table = new Aspose.Pdf.Table();
            
// Establezca el color del borde de la tabla como LightGray
table.Border = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, .5f, Aspose.Pdf.Color.FromRgb(System.Drawing.Color.LightGray));
            
// Establecer el borde de las celdas de la tabla
table.DefaultCellBorder = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, .5f, Aspose.Pdf.Color.FromRgb(System.Drawing.Color.LightGray));
            
// Crea un bucle para agregar 10 filas
for (int row_count = 1; row_count < 10; row_count++)
{
    // Agregar fila a la tabla
    Aspose.Pdf.Row row = table.Rows.Add();
    // Agregar celdas de tabla
    row.Cells.Add("Column (" + row_count + ", 1)");
    row.Cells.Add("Column (" + row_count + ", 2)");
    row.Cells.Add("Column (" + row_count + ", 3)");
}

// Agregar tabla a la página
page.Paragraphs.Add(table);

// Guardar el documento PDF
document.Save("Generated-PDF.pdf");

El siguiente es el resultado del ejemplo de código anterior.

Crear una tabla en un archivo PDF en C#

C# Crear tabla PDF con bordes y márgenes personalizados

También puede personalizar los bordes y márgenes de las tablas en PDF según sus requisitos. Por ejemplo, puede establecer el ancho del borde, el estilo del borde y los márgenes superior, inferior, izquierdo y derecho. Los siguientes son los pasos para establecer bordes y márgenes para las tablas en archivos PDF en C#.

El siguiente ejemplo de código muestra cómo establecer bordes y márgenes para tablas en PDF usando C#.

// Crear documento PDF (para cargar el archivo existente, inicialice el objeto Documento con la ruta del archivo)
Document document = new Document();

// Añadir página
Aspose.Pdf.Page page = document.Pages.Add();

// Inicializa una nueva instancia de la tabla.
Aspose.Pdf.Table table = new Aspose.Pdf.Table();

// Establecer con anchos de columna de la tabla
table.ColumnWidths = "50 50 50";

// Establecer borde de celda predeterminado usando el objeto BorderInfo
table.DefaultCellBorder = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, 0.1F);

// Establecer el borde de la tabla usando otro objeto BorderInfo personalizado
table.Border = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, 1F);
            
// Cree el objeto MarginInfo y establezca sus márgenes izquierdo, inferior, derecho y superior
Aspose.Pdf.MarginInfo margin = new Aspose.Pdf.MarginInfo();
margin.Top = 5f;
margin.Left = 5f;
margin.Right = 5f;
margin.Bottom = 5f;

// Establezca el relleno de celda predeterminado en el objeto MarginInfo
table.DefaultCellPadding = margin;
            
// Crear filas en la tabla y luego celdas en las filas
Aspose.Pdf.Row row1 = table.Rows.Add();
row1.Cells.Add("col1");
row1.Cells.Add("col2");
row1.Cells.Add();
TextFragment mytext = new TextFragment("col3 with large text string");
            
// Row1.Cells.Add("col3 con cadena de texto grande para colocar dentro de la celda");
row1.Cells[2].Paragraphs.Add(mytext);
row1.Cells[2].IsWordWrapped = false;
            
// Row1.Cells[2].Paragraphs[0].FixedWidth= 80;
Aspose.Pdf.Row row2 = table.Rows.Add();
row2.Cells.Add("item1");
row2.Cells.Add("item2");
row2.Cells.Add("item3");

// Agregar tabla a la página
page.Paragraphs.Add(table);

// Guardar el documento PDF
document.Save("Generated-PDF.pdf");

La siguiente captura de pantalla muestra el resultado del ejemplo de código anterior.

Crear tabla PDF con bordes y márgenes personalizados C#

C# Aplicar ajuste de columna a tablas PDF

Aspose.PDF for .NET también le permite personalizar el ajuste de columnas de la tabla en un PDF. Por ejemplo, puede ajustar automáticamente la tabla a la ventana o al contenido. Los siguientes son los pasos para establecer el ajuste de columna de una tabla en PDF usando C#.

El siguiente ejemplo de código muestra cómo configurar el ajuste de columna de la tabla en PDF usando C#.

// Crear documento PDF (para cargar el archivo existente, inicialice el objeto Documento con la ruta del archivo)
Document document = new Document();

// Añadir página
Aspose.Pdf.Page page = document.Pages.Add();

// Inicializa una nueva instancia de la tabla.
Aspose.Pdf.Table table = new Aspose.Pdf.Table();

// Establecer con anchos de columna de la tabla
table.ColumnWidths = "50 50 50";

// Establecer ajuste de columna
table.ColumnAdjustment = ColumnAdjustment.AutoFitToWindow;

// Establecer borde de celda predeterminado usando el objeto BorderInfo
table.DefaultCellBorder = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, 0.1F);

// Establecer el borde de la tabla usando otro objeto BorderInfo personalizado
table.Border = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, 1F);

// Cree el objeto MarginInfo y establezca sus márgenes izquierdo, inferior, derecho y superior
Aspose.Pdf.MarginInfo margin = new Aspose.Pdf.MarginInfo();
margin.Top = 5f;
margin.Left = 5f;
margin.Right = 5f;
margin.Bottom = 5f;

// Establezca el relleno de celda predeterminado en el objeto MarginInfo
table.DefaultCellPadding = margin;

// Crear filas en la tabla y luego celdas en las filas
Aspose.Pdf.Row row1 = table.Rows.Add();
row1.Cells.Add("col1");
row1.Cells.Add("col2");
row1.Cells.Add();
TextFragment mytext = new TextFragment("col3 with large text string");

// Row1.Cells.Add("col3 con cadena de texto grande para colocar dentro de la celda");
row1.Cells[2].Paragraphs.Add(mytext);
row1.Cells[2].IsWordWrapped = false;

// Row1.Cells[2].Paragraphs[0].FixedWidth= 80;
Aspose.Pdf.Row row2 = table.Rows.Add();
row2.Cells.Add("item1");
row2.Cells.Add("item2");
row2.Cells.Add("item3");

// Agregar tabla a la página
page.Paragraphs.Add(table);

// Guardar el documento PDF
document.Save("Generated-PDF.pdf");

C# .NET PDF API para crear tablas: obtenga una licencia gratuita

Puede obtener una licencia temporal gratuita para usar Aspose.PDF for .NET sin limitaciones de evaluación.

Conclusión

En este artículo, ha aprendido a crear tablas en archivos PDF usando C#. Además, has visto cómo personalizar los bordes. márgenes y ajuste de columnas de una tabla en PDF. Además, puede explorar más sobre la API de PDF de C# utilizando la documentación. En caso de que tenga alguna pregunta o consulta, puede contactarnos a través de nuestro foro.

Ver también