As tabelas são usadas para organizar bem os dados na forma de linhas e colunas. Além disso, eles resumem os dados a serem visualizados e analisados facilmente. O MS PowerPoint também permite que os apresentadores criem tabelas nas apresentações. Assim, neste artigo, você aprenderá a criar e manipular tabelas em apresentações do PowerPoint usando Java.
- API Java para criar e manipular tabelas no PowerPoint
- Criar uma tabela na apresentação do PowerPoint
- Acessar uma tabela em uma apresentação usando Java
- Formatar texto em tabelas do PowerPoint
- Relação de aspecto de bloqueio das tabelas
API Java para criar e manipular tabelas no PowerPoint
Para criar e manipular tabelas em apresentações do PowerPoint, usaremos Aspose.Slides for Java. A API foi projetada para criar, manipular e converter apresentações do PowerPoint e do OpenOffice. Você pode baixar o JAR da API ou instalá-lo usando as seguintes configurações do 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>
Criar uma tabela na apresentação do PowerPoint usando Java
Criar uma tabela usando Aspose.Slides for Java é tão fácil quanto uma torta. As etapas a seguir demonstram como criar uma tabela em uma apresentação do PowerPoint do zero usando Java.
- Primeiro, crie uma nova apresentação ou carregue uma existente usando a classe Apresentação.
- Em seguida, obtenha a referência do slide desejado em um objeto ISlide.
- Defina a largura e a altura de colunas e linhas, respectivamente, em arrays double[].
- Insira uma nova tabela na apresentação usando o método ISlide.getShapes().addTable(float, float, double[], double[]).
- Obtenha a referência da tabela recém-criada em um objeto ITable.
- Crie um loop para percorrer as linhas da tabela.
- Crie um loop aninhado para percorrer as células da tabela e, em cada iteração, execute as seguintes operações.
- Defina o texto da célula usando o método ITable.getRows().getItem(rowIndex).getItem(cellIndex).getTextFrame().setText(String).
- Obtenha a referência da formatação da célula em um objeto ICellFormat.
- Defina o estilo de borda da célula, se necessário.
- Finalmente, salve a apresentação usando o método Presentation.save(String, SaveFormat).
O exemplo de código a seguir mostra como criar uma tabela em uma apresentação do PowerPoint.
// Criar ou carregar apresentação
Presentation pres = new Presentation();
try {
// Acesse o primeiro slide
ISlide sld = pres.getSlides().get_Item(0);
// Definir colunas com larguras e linhas com alturas
double[] dblCols = { 50, 50, 50 };
double[] dblRows = { 50, 30, 30, 30, 30 };
// Adicionar forma de tabela ao slide
ITable tbl = sld.getShapes().addTable(100, 50, dblCols, dblRows);
// Definir texto e formato de borda para cada célula
for (int row = 0; row < tbl.getRows().size(); row++) {
for (int cell = 0; cell < tbl.getRows().get_Item(row).size(); cell++) {
// Definir texto
tbl.getRows().get_Item(row).get_Item(cell).getTextFrame().setText("Cell_" + cell);
// Definir borda
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);
}
}
// Salvar PPTX em disco
pres.save("table.pptx", SaveFormat.Pptx);
} finally {
if (pres != null)
pres.dispose();
}
A captura de tela a seguir mostra a tabela que criamos usando o código acima.
Acessar uma tabela em uma apresentação usando Java
Você também pode acessar as tabelas nas apresentações existentes do PowerPoint e manipulá-las conforme necessário. A seguir estão as etapas para acessar as tabelas em uma apresentação.
- Primeiro, carregue uma apresentação existente usando a classe Apresentação.
- Em seguida, obtenha a referência do slide desejado em um objeto ISlide.
- Crie uma instância de ITable e inicialize-a com null.
- Itere através de todos os objetos IShape na coleção ISlide.getShapes().
- Filtre as formas do tipo ITable.
- Digite cast a forma em ITable e manipule-a conforme necessário.
- Finalmente, salve a apresentação usando o método Presentation.save(String, SaveFormat).
O exemplo de código a seguir mostra como acessar tabelas em uma apresentação do PowerPoint usando Java.
// Criar ou carregar apresentação
Presentation pres = new Presentation("UpdateExistingTable.pptx");
try {
// Acesse o primeiro slide
ISlide sld = pres.getSlides().get_Item(0);
// Inicialize o ITable
ITable tbl = null;
// Iterar pelas formas e obter uma referência à tabela encontrada
for (IShape shp : sld.getShapes())
{
if (shp instanceof ITable)
{
tbl = (ITable) shp;
// Defina o texto da primeira coluna da segunda linha
tbl.get_Item(0, 1).getTextFrame().setText("New");
}
}
// Gravar o PPTX no disco
pres.save("table1_out.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Formatar texto em tabelas do PowerPoint usando Java
O Aspose.Slides for Java também permite definir a formatação das tabelas com bastante facilidade, conforme demonstrado nas etapas abaixo.
- Primeiro, carregue uma apresentação existente usando a classe Apresentação.
- Em seguida, obtenha a referência do slide desejado em um objeto ISlide.
- Recupere a referência da tabela desejada do slide em uma instância da classe ITable.
- Defina a formatação usando as classes PortionFormat, ParagraphFormat e TextFrameFormat.
- Atribua formatação à tabela usando os métodos ITable.setTextFormat().
- Finalmente, salve a apresentação usando o método Presentation.save(String, SaveFormat).
O exemplo de código a seguir mostra como definir a formatação da tabela no PowerPoint usando Java.
// Carregar apresentação
Presentation pres = new Presentation("simpletable.pptx");
try {
// Obter referência da tabela
ITable someTable = (ITable) pres.getSlides().get_Item(0).getShapes().get_Item(0);
// Definir a altura da fonte das células da tabela
PortionFormat portionFormat = new PortionFormat();
portionFormat.setFontHeight(25);
someTable.setTextFormat(portionFormat);
// Defina o alinhamento do texto das células da tabela e a margem direita em uma chamada
ParagraphFormat paragraphFormat = new ParagraphFormat();
paragraphFormat.setAlignment(TextAlignment.Right);
paragraphFormat.setMarginRight(20);
someTable.setTextFormat(paragraphFormat);
// Definir o tipo vertical de texto das células da tabela
TextFrameFormat textFrameFormat = new TextFrameFormat();
textFrameFormat.setTextVerticalType(TextVerticalType.Vertical);
someTable.setTextFormat(textFrameFormat);
// Salvar apresentação
pres.save("result.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Bloquear proporção de tabelas no PowerPoint usando Java
Você também pode bloquear a proporção das tabelas em apresentações do PowerPoint usando Java. A seguir estão os passos para conseguir isso.
- Primeiro, carregue uma apresentação existente usando a classe Apresentação.
- Obtenha a referência do slide desejado em um objeto ISlide.
- Crie uma tabela ou recupere a referência da tabela existente em um objeto ITable.
- Bloqueie a proporção usando o método ITable.getGraphicalObjectLock().setAspectRatioLocked(!ITable.getGraphicalObjectLock().getAspectRatioLocked()).
- Finalmente, salve a apresentação usando o método Presentation.save(String, SaveFormat).
O exemplo de código a seguir mostra como bloquear a proporção da tabela em apresentações do PowerPoint.
// Carregar apresentação
Presentation pres = new Presentation("pres.pptx");
try {
// Obter referência da tabela
ITable table = (ITable)pres.getSlides().get_Item(0).getShapes().get_Item(0);
System.out.println("Bloquear proporção set: " + table.getGraphicalObjectLock().getAspectRatioLocked());
// Bloquear proporção
table.getGraphicalObjectLock().setAspectRatioLocked(!table.getGraphicalObjectLock().getAspectRatioLocked()); // invert
System.out.println("Bloquear proporção set: " + table.getGraphicalObjectLock().getAspectRatioLocked());
// Salvar apresentação
pres.save("pres-out.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Obtenha uma licença de API gratuita
Você pode usar o Aspose.Slides for Java sem limitações de avaliação obtendo uma licença temporária gratuita.
Conclusão
Neste artigo, você aprendeu como criar tabelas em apresentações do PowerPoint usando Java. Além disso, você viu como acessar as tabelas e definir sua formatação e proporção de forma programática. Além disso, você pode visitar a documentação para explorar mais sobre o Aspose.Slides for Java. Além disso, você pode fazer suas perguntas através do nosso fórum.