Crear tabla en archivos PDF en Java

Una tabla permite a los lectores revisar los datos rápidamente sin leer mucho texto. Por tanto, las tablas se consideran parte integrante de los documentos. Mientras trabaja en la automatización de PDF y genera los archivos PDF mediante programación, es posible que se encuentre con la necesidad de crear tablas muy a menudo. Para lograr eso, este artículo cubre cómo crear tablas en archivos PDF usando Java.

API de Java para crear tablas en PDF - Descarga gratuita

Aspose.PDF for Java es una API popular para realizar la generación y manipulación de PDF dentro de aplicaciones Java. Con la API, puede crear sin problemas archivos PDF de diseños simples y complejos. Usaremos esta API para crear tablas en archivos PDF nuevos o existentes. Puede descargar la API o instalarla usando las siguientes configuraciones de Maven.

Repositorio:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>

Dependencia:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <version>22.4</version>
</dependency>

Crear una tabla en un PDF en Java

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

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

// Cargar o crear documento
Document doc = new Document("input.pdf");

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

// Establezca el color del borde de la tabla como LightGray
table.setBorder(new BorderInfo(BorderSide.All, .5f, Color.getLightGray()));

// Establecer el borde de las celdas de la tabla
table.setDefaultCellBorder(new BorderInfo(BorderSide.All, .5f, Color.getLightGray()));

// Crea un bucle para agregar 10 filas
for (int row_count = 1; row_count < 10; row_count++) {
    // agregar fila a la tabla
    Row row = table.getRows().add();
    // añadir celdas de tabla
    row.getCells().add("Column (" + row_count + ", 1)");
    row.getCells().add("Column (" + row_count + ", 2)");
    row.getCells().add("Column (" + row_count + ", 3)");
}

// Agregar objeto de tabla a la primera página del documento de entrada
doc.getPages().get_Item(1).getParagraphs().add(table);

// Guardar el documento actualizado que contiene la tabla
doc.save("create-table.pdf");

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

Crear una tabla en un archivo PDF en Java

Java 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 Java.

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

// Crea una instancia del objeto Document llamando a su constructor vacío
Document doc = new Document();

// Añadir página
Page page = doc.getPages().add();

// Crear una instancia de un objeto de tabla
Table tab1 = new Table();

// Agregue la tabla en la colección de párrafos de la sección deseada
page.getParagraphs().add(tab1);

// Establecer con anchos de columna de la tabla
tab1.setColumnWidths ("50 50 50");

// Establecer borde de celda predeterminado usando el objeto BorderInfo
tab1.setDefaultCellBorder(new BorderInfo(BorderSide.All, 0.1F));

// Establecer el borde de la tabla usando otro objeto BorderInfo personalizado
tab1.setBorder (new BorderInfo(BorderSide.All, 1F));

// Cree el objeto MarginInfo y establezca sus márgenes izquierdo, inferior, derecho y superior
MarginInfo margin = new MarginInfo();
margin.setTop (5f);
margin.setLeft (5f);
margin.setRight (5f);
margin.setBottom (5f);

// Establezca el relleno de celda predeterminado en el objeto MarginInfo
tab1.setDefaultCellPadding(margin);

// Crear filas en la tabla y luego celdas en las filas
Row row1 = tab1.getRows().add();
row1.getCells().add("col1");
row1.getCells().add("col2");
row1.getCells().add();

TextFragment mytext = new TextFragment("col3 with large text string");

row1.getCells().get_Item(2).getParagraphs().add(mytext);
row1.getCells().get_Item(2).setWordWrapped(false);

Row row2 = tab1.getRows().add();
row2.getCells().add("item1");
row2.getCells().add("item2");
row2.getCells().add("item3");

// Guardar el PDF
doc.save("create-table-margin-border.pdf");

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

Crear tabla PDF con bordes y márgenes personalizados Java

Java Create PDF Tables - Aplicar ajuste de columna

Aspose.PDF for Java 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 configurar el ajuste de columnas de una tabla en PDF usando Java.

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

// Crea una instancia del objeto PDF llamando a su constructor vacío
Document doc = new Document();

// Crear la sección en el objeto PDF
Page sec1 = doc.getPages().add();

// Crear una instancia de un objeto de tabla
Table tab1 = new Table();

// Agregue la tabla en la colección de párrafos de la sección deseada
sec1.getParagraphs().add(tab1);

// Establecer con anchos de columna de la tabla
tab1.setColumnWidths("50 50 50");
tab1.setColumnAdjustment(ColumnAdjustment.AutoFitToWindow);

// Establecer borde de celda predeterminado usando el objeto BorderInfo
tab1.setDefaultCellBorder(new BorderInfo(BorderSide.All, 0.1F));

// Establecer el borde de la tabla usando otro objeto BorderInfo personalizado
tab1.setBorder(new BorderInfo(BorderSide.All, 1F));

// Cree el objeto MarginInfo y establezca sus márgenes izquierdo, inferior, derecho y superior
MarginInfo margin = new MarginInfo();
margin.setTop(5f);
margin.setLeft(5f);
margin.setRight(5f);
margin.setBottom(5f);

// Establezca el relleno de celda predeterminado en el objeto MarginInfo
tab1.setDefaultCellPadding(margin);

// Crear filas en la tabla y luego celdas en las filas
Row row1 = tab1.getRows().add();
row1.getCells().add("col1");
row1.getCells().add("col2");
row1.getCells().add("col3");
Row row2 = tab1.getRows().add();
row2.getCells().add("item1");
row2.getCells().add("item2");
row2.getCells().add("item3");

// Guardar el documento actualizado que contiene la tabla
doc.save("create-table-autofit.pdf");

API de Java para crear una tabla PDF: obtenga una licencia gratuita

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

Conclusión

En este artículo, ha aprendido a crear tablas en archivos PDF utilizando Java. 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 PDF de Java utilizando la documentación. En caso de que tenga alguna pregunta o consulta, puede contactarnos a través de nuestro foro.

Ver también