Las tablas se utilizan para organizar bien los datos en forma de filas y columnas. Además, resumen los datos para ser vistos y analizados fácilmente. MS PowerPoint también permite a los presentadores crear tablas en las presentaciones. En consecuencia, en este artículo aprenderá a crear y manipular tablas en presentaciones de PowerPoint utilizando Java.
- API de Java para crear y manipular tablas en PowerPoint
- Crear una tabla en una presentación de PowerPoint
- Acceder a una tabla en una presentación usando Java
- Formatear texto en tablas de PowerPoint
- Bloquear la relación de aspecto de las tablas
API de Java para crear y manipular tablas en PowerPoint
Para crear y manipular tablas en presentaciones de PowerPoint, usaremos Aspose.Slides for Java. La API está diseñada para crear, manipular y convertir presentaciones de PowerPoint y OpenOffice. Puede descargar el JAR de la API o instalarlo usando las siguientes configuraciones de Maven.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>http://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-slides</artifactId>
<version>21.8</version>
<classifier>jdk16</classifier>
</dependency>
Crear una tabla en una presentación de PowerPoint usando Java
Crear una tabla usando Aspose.Slides for Java es tan fácil como un pastel. Los siguientes pasos demuestran cómo crear una tabla en una presentación de PowerPoint desde cero usando Java.
- Primero, cree una nueva presentación o cargue una existente usando la clase Presentation.
- Luego, obtenga la referencia de la diapositiva deseada en un objeto ISlide.
- Defina el ancho y alto de columnas y filas respectivamente en arreglos dobles[].
- Inserte una nueva tabla en la presentación usando el método ISlide.getShapes().addTable(float, float, double[], double[]).
- Obtenga la referencia de la tabla recién creada en un objeto ITable.
- Cree un bucle para iterar a través de las filas de la tabla.
- Cree un bucle anidado para iterar a través de las celdas de la tabla y, en cada iteración, realice las siguientes operaciones.
- Establezca el texto de la celda usando el método ITable.getRows().get_Item(rowIndex).get_Item(cellIndex).getTextFrame().setText(String).
- Obtenga la referencia del formato de la celda en un objeto ICellFormat.
- Establezca el estilo de borde de la celda, si es necesario.
- Finalmente, guarde la presentación usando el método Presentation.save(String, SaveFormat).
El siguiente ejemplo de código muestra cómo crear una tabla en una presentación de PowerPoint.
// Crear o cargar presentación
Presentation pres = new Presentation();
try {
// Acceder a la primera diapositiva
ISlide sld = pres.getSlides().get_Item(0);
// Definir columnas con anchos y filas con alturas
double[] dblCols = { 50, 50, 50 };
double[] dblRows = { 50, 30, 30, 30, 30 };
// Agregar forma de tabla a la diapositiva
ITable tbl = sld.getShapes().addTable(100, 50, dblCols, dblRows);
// Establecer texto y formato de borde para cada celda
for (int row = 0; row < tbl.getRows().size(); row++) {
for (int cell = 0; cell < tbl.getRows().get_Item(row).size(); cell++) {
// Establecer texto
tbl.getRows().get_Item(row).get_Item(cell).getTextFrame().setText("Cell_" + cell);
// Establecer borde
ICellFormat cellFormat = tbl.getRows().get_Item(row).get_Item(cell).getCellFormat();
cellFormat.getBorderTop().getFillFormat().setFillType(FillType.Solid);
cellFormat.getBorderTop().getFillFormat().getSolidFillColor().setColor(Color.RED);
cellFormat.getBorderTop().setWidth(5);
cellFormat.getBorderBottom().getFillFormat().setFillType(FillType.Solid);
cellFormat.getBorderBottom().getFillFormat().getSolidFillColor().setColor(Color.RED);
cellFormat.getBorderBottom().setWidth(5);
cellFormat.getBorderLeft().getFillFormat().setFillType(FillType.Solid);
cellFormat.getBorderLeft().getFillFormat().getSolidFillColor().setColor(Color.RED);
cellFormat.getBorderLeft().setWidth(5);
cellFormat.getBorderRight().getFillFormat().setFillType(FillType.Solid);
cellFormat.getBorderRight().getFillFormat().getSolidFillColor().setColor(Color.RED);
cellFormat.getBorderRight().setWidth(5);
}
}
// Guardar PPTX en disco
pres.save("table.pptx", SaveFormat.Pptx);
} finally {
if (pres != null)
pres.dispose();
}
La siguiente captura de pantalla muestra la tabla que hemos creado usando el código anterior.
Acceder a una tabla en una presentación usando Java
También puede acceder a las tablas en las presentaciones de PowerPoint existentes y manipularlas según sea necesario. Los siguientes son los pasos para acceder a las tablas en una presentación.
- Primero, cargue una presentación existente usando la clase Presentation.
- Luego, obtenga la referencia de la diapositiva deseada en un objeto ISlide.
- Cree una instancia de ITable e inicialícela con nulo.
- Iterar a través de todos los objetos IShape en la colección ISlide.getShapes().
- Filtra las formas de tipo ITable.
- Escriba la forma en ITable y manipúlela según sea necesario.
- Finalmente, guarde la presentación usando el método Presentation.save(String, SaveFormat).
El siguiente ejemplo de código muestra cómo acceder a las tablas en una presentación de PowerPoint usando Java.
// Crear o cargar presentación
Presentation pres = new Presentation("UpdateExistingTable.pptx");
try {
// Accede a la primera diapositiva
ISlide sld = pres.getSlides().get_Item(0);
// Inicializar ITable
ITable tbl = null;
// Iterar a través de las formas y obtener una referencia a la tabla encontrada
for (IShape shp : sld.getShapes())
{
if (shp instanceof ITable)
{
tbl = (ITable) shp;
// Establecer el texto de la primera columna de la segunda fila
tbl.get_Item(0, 1).getTextFrame().setText("New");
}
}
// Escribir el PPTX en el disco
pres.save("table1_out.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Formatear texto en tablas de PowerPoint usando Java
Aspose.Slides for Java también le permite establecer el formato de las tablas con bastante facilidad, como se demuestra en los pasos a continuación.
- Primero, cargue una presentación existente usando la clase Presentation.
- Luego, obtenga la referencia de la diapositiva deseada en un objeto ISlide.
- Recupere la referencia de la tabla deseada de la diapositiva en una instancia de la clase ITable.
- Establezca el formato usando las clases PortionFormat, ParagraphFormat y TextFrameFormat.
- Asigne formato a la tabla usando los métodos ITable.setTextFormat().
- Finalmente, guarde la presentación usando el método Presentation.save(String, SaveFormat).
El siguiente ejemplo de código muestra cómo configurar el formato de la tabla en PowerPoint usando Java.
// Cargar presentación
Presentation pres = new Presentation("simpletable.pptx");
try {
// Obtener referencia de la tabla
ITable someTable = (ITable) pres.getSlides().get_Item(0).getShapes().get_Item(0);
// Establecer la altura de fuente de las celdas de la tabla
PortionFormat portionFormat = new PortionFormat();
portionFormat.setFontHeight(25);
someTable.setTextFormat(portionFormat);
// Establecer la alineación del texto de las celdas de la tabla y el margen derecho en una sola llamada
ParagraphFormat paragraphFormat = new ParagraphFormat();
paragraphFormat.setAlignment(TextAlignment.Right);
paragraphFormat.setMarginRight(20);
someTable.setTextFormat(paragraphFormat);
// Establecer el tipo vertical de texto de las celdas de la tabla
TextFrameFormat textFrameFormat = new TextFrameFormat();
textFrameFormat.setTextVerticalType(TextVerticalType.Vertical);
someTable.setTextFormat(textFrameFormat);
// Guardar presentación
pres.save("result.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Bloquear la relación de aspecto de las tablas en PowerPoint usando Java
También puede bloquear la relación de aspecto de las tablas en las presentaciones de PowerPoint usando Java. Los siguientes son los pasos para lograrlo.
- Primero, cargue una presentación existente usando la clase Presentation.
- Obtenga la referencia de la diapositiva deseada en un objeto ISlide.
- Cree una tabla o recupere la referencia de una tabla existente en un objeto ITable.
- Bloquee la relación de aspecto con el método ITable.getGraphicalObjectLock().setAspectRatioLocked(!ITable.getGraphicalObjectLock().getAspectRatioLocked()).
- Finalmente, guarde la presentación usando el método Presentation.save(String, SaveFormat).
El siguiente ejemplo de código muestra cómo bloquear la relación de aspecto de la tabla en las presentaciones de PowerPoint.
// Cargar presentación
Presentation pres = new Presentation("pres.pptx");
try {
// Obtener referencia de la tabla
ITable table = (ITable)pres.getSlides().get_Item(0).getShapes().get_Item(0);
System.out.println("Relación de aspecto de bloqueo set: " + table.getGraphicalObjectLock().getAspectRatioLocked());
// Relación de aspecto de bloqueo
table.getGraphicalObjectLock().setAspectRatioLocked(!table.getGraphicalObjectLock().getAspectRatioLocked()); // invert
System.out.println("Relación de aspecto de bloqueo set: " + table.getGraphicalObjectLock().getAspectRatioLocked());
// Guardar presentación
pres.save("pres-out.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Obtenga una licencia de API gratuita
Puede usar Aspose.Slides for Java sin limitaciones de evaluación al obtener una licencia temporal gratuita.
Conclusión
En este artículo, ha aprendido a crear tablas en presentaciones de PowerPoint utilizando Java. Además, ha visto cómo acceder a las tablas y establecer su formato y relación de aspecto mediante programación. Además, puede visitar la documentación para explorar más sobre Aspose.Slides for Java. Además, puede hacer sus preguntas a través de nuestro foro.