As tabelas são comumente usadas para organizar os dados na forma de linhas e colunas. Eles tornam muito mais fácil visualizar, entender e analisar os dados. Em vários casos, você precisa inserir tabelas em suas apresentações do PowerPoint. Para fazer isso programaticamente, este artigo aborda como criar tabelas no PowerPoint PPT ou PPTX usando Python. Além disso, você aprenderá como acessar, modificar e formatar as tabelas existentes do PowerPoint.
- Biblioteca Python para criar e manipular tabelas do PowerPoint
- Criar uma tabela em apresentações do PowerPoint
- Editar uma tabela em uma apresentação
- Formatar texto em tabelas do PowerPoint
- Relação de aspecto de bloqueio das tabelas
Biblioteca Python para criar e manipular tabelas do PowerPoint
Aspose.Slides for Python fornece vários recursos para criar, manipular e converter documentos do PowerPoint e OpenOffice. Usaremos esta biblioteca para criar, editar e manipular tabelas em nossas apresentações em PowerPoint. Você pode instalar a biblioteca de PyPI usando o seguinte comando.
> pip install aspose.slides
Criar uma tabela no PowerPoint PPT usando Python
A seguir estão as etapas para criar uma tabela em um PowerPoint PPT/PPTX em Python.
- Primeiro, use a classe Presentation para carregar ou criar uma apresentação PPT/PPTX.
- Em seguida, obtenha a referência do slide desejado onde deseja adicionar a tabela.
- Depois disso, crie dois arrays para definir a largura e a altura das colunas e linhas, respectivamente.
- Insira uma nova tabela no slide usando o método ISlide.shapes.addtable() e obtenha sua referência.
- Inicie um loop para percorrer as linhas da tabela.
- Inicie um loop aninhado para percorrer as células da tabela e execute as seguintes operações em cada iteração.
- Defina o texto da célula usando a propriedade Table.rows[row][cell].textframe.text.
- 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.
import aspose.slides as slides
import aspose.pydrawing as drawing
# Crie uma nova apresentação (para carregar uma apresentação existente, forneça o caminho do arquivo no construtor)
with slides.Presentation() as pres:
# Acesse o primeiro slide
sld = pres.slides[0]
# Definir colunas com larguras e linhas com alturas
dblCols = [50, 50, 50]
dblRows = [50, 30, 30, 30, 30]
# Adicionar forma de tabela ao slide
tbl = sld.shapes.add_table(100, 50, dblCols, dblRows)
# Definir o formato da borda para cada célula
for row in range(len(tbl.rows)):
for cell in range(len(tbl.rows[row])):
# Adicione texto
tbl.rows[row][cell].text_frame.text = "Cell_" + cell
# Definir borda
tbl.rows[row][cell].cell_format.border_top.fill_format.fill_type = slides.FillType.SOLID
tbl.rows[row][cell].cell_format.border_top.fill_format.solid_fill_color.color = drawing.Color.red
tbl.rows[row][cell].cell_format.border_top.width = 5
tbl.rows[row][cell].cell_format.border_bottom.fill_format.fill_type = slides.FillType.SOLID
tbl.rows[row][cell].cell_format.border_bottom.fill_format.solid_fill_color.color= drawing.Color.red
tbl.rows[row][cell].cell_format.border_bottom.width =5
tbl.rows[row][cell].cell_format.border_left.fill_format.fill_type = slides.FillType.SOLID
tbl.rows[row][cell].cell_format.border_left.fill_format.solid_fill_color.color =drawing.Color.red
tbl.rows[row][cell].cell_format.border_left.width = 5
tbl.rows[row][cell].cell_format.border_right.fill_format.fill_type = slides.FillType.SOLID
tbl.rows[row][cell].cell_format.border_right.fill_format.solid_fill_color.color = drawing.Color.red
tbl.rows[row][cell].cell_format.border_right.width = 5
# Mesclar as células 1 e 2 da linha 1
tbl.merge_cells(tbl.rows[0][0], tbl.rows[1][1], False)
# Adicione texto to the merged cell
tbl.rows[0][0].text_frame.text = "Merged Cells"
# Salvar PPTX em disco
pres.save("table.pptx", slides.export.SaveFormat.PPTX)
A captura de tela a seguir mostra a tabela que criamos usando o código acima.
Editar uma tabela em um PowerPoint PPT usando Python
Você também pode modificar uma tabela existente acessando-a no slide da apresentação. É assim que você pode acessar uma tabela do PowerPoint e editar seu conteúdo ou aparência em Python.
- Primeiro, carregue um arquivo PowerPoint PPT/PPTX existente usando a classe Presentation.
- Em seguida, obtenha a referência do slide desejado em um objeto.
- Crie um objeto para tabela e inicialize-o com None.
- Itere através de todas as formas no slide usando a coleção ISlide.shapes.
- Filtre as formas do tipo Tabela.
- Manipule a tabela 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 editar tabelas em um PowerPoint PPT usando Python.
# Carregar apresentação
with slides.Presentation("table.pptx") as pres:
# Acesse o primeiro slide
sld = pres.slides[0]
# Inicializar nulo TableEx
tbl = None
# Iterar pelas formas e definir uma referência para a tabela encontrada
for shp in sld.shapes:
if type(shp) is slides.Table:
tbl = shp
# Defina o texto da primeira coluna da segunda linha
tbl.rows[0][1].text_frame.text = "New"
# Salve o PPTX em disco
pres.save("table1_out.pptx", slides.export.SaveFormat.PPTX)
Formatar texto em tabelas do PowerPoint usando Python
O Aspose.Slides for Python também permite que você aplique a formatação ao texto dentro das tabelas. As etapas a seguir mostram como você pode conseguir isso.
- Primeiro, carregue uma apresentação existente usando a classe Presentation.
- Em seguida, obtenha a referência do slide desejado em um objeto.
- Obtenha a referência da tabela desejada do slide em um objeto.
- Defina a formatação usando objetos PortionFormat, ParagraphFormat e TextFrameFormat.
- Atribua formatação à tabela usando o método Table.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 do texto dentro de uma tabela no PowerPoint usando Python.
import aspose.slides as slides
# Criar uma apresentação
with slides.Presentation() as presentation:
# Adicionar tabela
someTable = presentation.slides[0].shapes.add_table(100, 100, [100, 50, 30], [30, 50, 30])
# Definir a altura da fonte das células da tabela
portionFormat = slides.PortionFormat()
portionFormat.font_height = 25
someTable.set_text_format(portionFormat)
# Defina o alinhamento do texto das células da tabela e a margem direita em uma chamada
paragraphFormat = slides.ParagraphFormat()
paragraphFormat.alignment = slides.TextAlignment.RIGHT
paragraphFormat.margin_right = 20
someTable.set_text_format(paragraphFormat)
# Definir o tipo vertical de texto das células da tabela
textFrameFormat = slides.TextFrameFormat()
textFrameFormat.text_vertical_type = slides.TextVerticalType.VERTICAL
someTable.set_text_format(textFrameFormat)
# Salvar apresentação
presentation.save("table-formatting.pptx", slides.export.SaveFormat.PPTX)
Bloquear proporção de tabelas do PowerPoint em Python
Você também pode bloquear a proporção das tabelas em apresentações do PowerPoint usando Python, conforme demonstrado nas etapas a seguir.
- Primeiro, carregue uma apresentação existente usando a classe Presentation.
- Em seguida, obtenha a referência do slide desejado em um objeto.
- Crie uma tabela ou recupere a referência de uma tabela existente em um objeto.
- Bloqueie a proporção usando a propriedade Table.shapelock.aspectratiolocked.
- 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 no PowerPoint PPTX.
import aspose.slides as slides
# Criar apresentação
with slides.Presentation() as pres:
# Adicionar tabela
table = pres.slides[0].shapes.add_table(100, 100, [100, 50, 30], [30, 50, 30])
print("Bloquear proporção set: {0}".format(table.shape_lock.aspect_ratio_locked))
# Bloquear proporção
table.shape_lock.aspect_ratio_locked = not table.shape_lock.aspect_ratio_locked
print("Bloquear proporção set: {0}".format(table.shape_lock.aspect_ratio_locked))
# Salvar apresentação
pres.save("pres-out.pptx", slides.export.SaveFormat.PPTX)
Obtenha uma licença gratuita
Você pode usar o Aspose.Slides for Python sem limitações de avaliação obtendo uma licença temporária gratuita.
Conclusão
As tabelas são parte integrante dos documentos, que são usadas para organizar os dados. Neste artigo, você aprendeu como criar tabelas em um PowerPoint PPT/PPTX em Python. Além disso, você viu como acessar e manipular tabelas existentes em apresentações do PowerPoint programaticamente. Além disso, você também pode visitar a documentação para explorar mais sobre o Aspose.Slides for Python. Além disso, você pode fazer suas perguntas através do nosso fórum.
Veja também
- Criar arquivos do PowerPoint em Python
- Converter PPTX para PDF em Python
- Converter PPT para PNG em Python
- Adicionar marca d’água no PowerPoint PPT em Python
- Aplicar efeitos 3D no PowerPoint PPT usando Python
Informações: Usando o conversor Aspose JPG para PPT ou PNG para PPT, você pode gerar apresentações em PowerPoint a partir de imagens simples.