Le tabelle sono comunemente usate per organizzare i dati sotto forma di righe e colonne. Semplificano la visualizzazione, la comprensione e l’analisi dei dati. In vari casi, devi inserire delle tabelle nelle tue presentazioni PowerPoint. Per farlo a livello di codice, questo articolo illustra come creare tabelle in PowerPoint PPT o PPTX usando Python. Inoltre, imparerai come accedere, modificare e formattare le tabelle PowerPoint esistenti.
- Libreria Python per creare e manipolare tabelle PowerPoint
- Crea una tabella nelle presentazioni di PowerPoint
- Modifica una tabella in una presentazione
- Formatta il testo nelle tabelle di PowerPoint
- Blocca le proporzioni delle tabelle
Libreria Python per creare e manipolare tabelle PowerPoint
Aspose.Slides for Python fornisce una serie di funzionalità per creare, manipolare e convertire documenti PowerPoint e OpenOffice. Utilizzeremo questa libreria per creare, modificare e manipolare tabelle nelle nostre presentazioni PowerPoint. È possibile installare la libreria da PyPI utilizzando il comando seguente.
> pip install aspose.slides
Crea una tabella in PowerPoint PPT usando Python
Di seguito sono riportati i passaggi per creare una tabella in un PowerPoint PPT/PPTX in Python.
- Innanzitutto, usa la classe Presentation per caricare o creare una presentazione PPT/PPTX.
- Quindi, ottieni il riferimento della diapositiva desiderata in cui desideri aggiungere la tabella.
- Successivamente, crea due array per definire rispettivamente la larghezza e l’altezza di colonne e righe.
- Inserisci una nuova tabella sulla diapositiva usando il metodo ISlide.shapes.addtable() e ottieni il suo riferimento.
- Avvia un ciclo per scorrere le righe della tabella.
- Avvia un ciclo nidificato per scorrere le celle della tabella ed eseguire le seguenti operazioni in ogni iterazione.
- Imposta il testo della cella usando la proprietà Table.rows[row][cell].textframe.text.
- Imposta lo stile del bordo della cella, se necessario.
- Infine, salva la presentazione usando il metodo Presentation.save(string, SaveFormat).
Nell’esempio di codice seguente viene illustrato come creare una tabella in una presentazione di PowerPoint.
import aspose.slides as slides
import aspose.pydrawing as drawing
# Create a new presentation (to load an existing presentation, provide file's path in constructor)
with slides.Presentation() as pres:
# Access first slide
sld = pres.slides[0]
# Define columns with widths and rows with heights
dblCols = [50, 50, 50]
dblRows = [50, 30, 30, 30, 30]
# Add table shape to slide
tbl = sld.shapes.add_table(100, 50, dblCols, dblRows)
# Set border format for each cell
for row in range(len(tbl.rows)):
for cell in range(len(tbl.rows[row])):
# Add text
tbl.rows[row][cell].text_frame.text = "Cell_" + cell
# Set border
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
# Merge cells 1 & 2 of row 1
tbl.merge_cells(tbl.rows[0][0], tbl.rows[1][1], False)
# Add text to the merged cell
tbl.rows[0][0].text_frame.text = "Merged Cells"
# Save PPTX to Disk
pres.save("table.pptx", slides.export.SaveFormat.PPTX)
Lo screenshot seguente mostra la tabella che abbiamo creato utilizzando il codice sopra.
Modifica una tabella in un PPT di PowerPoint usando Python
Puoi anche modificare una tabella esistente accedendovi dalla diapositiva della presentazione. Ecco come puoi accedere a una tabella PowerPoint e modificarne il contenuto o l’aspetto in Python.
- Innanzitutto, carica un file PowerPoint PPT/PPTX esistente utilizzando la classe Presentation.
- Quindi, ottieni il riferimento della diapositiva desiderata in un oggetto.
- Crea un oggetto per la tabella e inizializzalo con Nessuno.
- Scorri tutte le forme nella diapositiva utilizzando la raccolta ISlide.shapes.
- Filtra le forme di tipo Tabella.
- Manipolare la tabella come richiesto.
- Infine, salva la presentazione usando il metodo Presentation.save(string, SaveFormat).
L’esempio di codice seguente mostra come modificare le tabelle in un PPT di PowerPoint usando Python.
# Load presentation
with slides.Presentation("table.pptx") as pres:
# Access the first slide
sld = pres.slides[0]
# Initialize null TableEx
tbl = None
# Iterate through the shapes and set a reference to the table found
for shp in sld.shapes:
if type(shp) is slides.Table:
tbl = shp
# Set the text of the first column of second row
tbl.rows[0][1].text_frame.text = "New"
# Save the PPTX to Disk
pres.save("table1_out.pptx", slides.export.SaveFormat.PPTX)
Formatta il testo nelle tabelle di PowerPoint usando Python
Aspose.Slides per Python consente anche di applicare la formattazione al testo all’interno delle tabelle. I passaggi seguenti mostrano come puoi raggiungere questo obiettivo.
- Innanzitutto, carica una presentazione esistente utilizzando la classe Presentation.
- Quindi, ottieni il riferimento della diapositiva desiderata in un oggetto.
- Ottieni il riferimento della tabella desiderata dalla diapositiva in un oggetto.
- Imposta la formattazione usando gli oggetti PortionFormat, ParagraphFormat e TextFrameFormat.
- Assegna la formattazione alla tabella utilizzando il metodo Table.settextformat().
- Infine, salva la presentazione usando il metodo Presentation.save(string, SaveFormat).
L’esempio di codice seguente mostra come impostare la formattazione del testo all’interno di una tabella in PowerPoint usando Python.
import aspose.slides as slides
# Create a presentation
with slides.Presentation() as presentation:
# Add table
someTable = presentation.slides[0].shapes.add_table(100, 100, [100, 50, 30], [30, 50, 30])
# Set table cells' font height
portionFormat = slides.PortionFormat()
portionFormat.font_height = 25
someTable.set_text_format(portionFormat)
# Set table cells' text alignment and right margin in one call
paragraphFormat = slides.ParagraphFormat()
paragraphFormat.alignment = slides.TextAlignment.RIGHT
paragraphFormat.margin_right = 20
someTable.set_text_format(paragraphFormat)
# Set table cells' text vertical type
textFrameFormat = slides.TextFrameFormat()
textFrameFormat.text_vertical_type = slides.TextVerticalType.VERTICAL
someTable.set_text_format(textFrameFormat)
# Save presentation
presentation.save("table-formatting.pptx", slides.export.SaveFormat.PPTX)
Blocca le proporzioni delle tabelle di PowerPoint in Python
Puoi anche bloccare le proporzioni delle tabelle nelle presentazioni PowerPoint usando Python, come illustrato nei passaggi seguenti.
- Innanzitutto, carica una presentazione esistente utilizzando la classe Presentation.
- Quindi, ottieni il riferimento della diapositiva desiderata in un oggetto.
- Crea una tabella o recupera il riferimento di una tabella esistente in un oggetto.
- Blocca le proporzioni usando la proprietà Table.shapelock.aspectratiolocked.
- Infine, salva la presentazione usando il metodo Presentation.save(string, SaveFormat).
Nell’esempio di codice seguente viene illustrato come bloccare le proporzioni della tabella in PowerPoint PPTX.
import aspose.slides as slides
# Create presentation
with slides.Presentation() as pres:
# Add table
table = pres.slides[0].shapes.add_table(100, 100, [100, 50, 30], [30, 50, 30])
print("Lock aspect ratio set: {0}".format(table.shape_lock.aspect_ratio_locked))
# Lock aspect ratio
table.shape_lock.aspect_ratio_locked = not table.shape_lock.aspect_ratio_locked
print("Lock aspect ratio set: {0}".format(table.shape_lock.aspect_ratio_locked))
# Save presentation
pres.save("pres-out.pptx", slides.export.SaveFormat.PPTX)
Ottieni una licenza gratuita
Puoi utilizzare Aspose.Slides per Python senza limitazioni di valutazione ottenendo una licenza temporanea.
Conclusione
Le tabelle sono parte integrante dei documenti, che servono per organizzare i dati. In questo articolo, hai imparato come creare tabelle in un PowerPoint PPT/PPTX in Python. Inoltre, hai visto come accedere e manipolare le tabelle esistenti nelle presentazioni PowerPoint a livello di codice. Inoltre, puoi anche visitare la documentazione per esplorare di più su Aspose.Slides per Python. Inoltre, puoi porre le tue domande tramite il nostro forum.
Guarda anche
- Crea file PowerPoint in Python
- Converti PPTX in PDF in Python
- Converti PPT in PNG in Python
- Aggiungi filigrana in PowerPoint PPT in Python
- Applica effetti 3D in PowerPoint PPT usando Python
Informazioni: utilizzando il convertitore Aspose JPG in PPT o PNG in PPT, puoi generare presentazioni PowerPoint da semplici immagini.