目次
1. Was ist python-pptx?
python-pptx ist eine Bibliothek, mit der Sie PowerPoint-Präsentationen direkt aus Python-Programmen erstellen, bearbeiten und speichern können. Dadurch entfällt die manuelle Arbeit, und es wird möglich, dynamische Präsentationen automatisch aus Daten zu generieren oder wiederkehrende Aufgaben effizienter zu gestalten.1.1 Hauptanwendungen von python-pptx
- Automatisierte Präsentationserstellung: Erstellen Sie automatisch Folien auf Basis von Daten für Meetings oder Berichte.
- Effiziente Bearbeitung: Fügen Sie Folien oder Texte zu bestehenden PowerPoint-Dateien hinzu und aktualisieren Sie Inhalte in kurzer Zeit.
1.2 Vorteile der PowerPoint-Steuerung mit Python
Im Vergleich zur manuellen Arbeit in PowerPoint ermöglicht python-pptx die Automatisierung durch Programmierung. So können Sie große Mengen an Folien auf einmal erstellen oder regelmäßige Berichte effizienter generieren, was die Arbeitszeit erheblich verkürzt.2. Einrichtung von python-pptx
2.1 Installationsschritte
Die Installation von python-pptx ist sehr einfach. Führen Sie einfach den folgenden Befehl aus:pip install python-pptx
Falls Ihre Python-Umgebung noch nicht eingerichtet ist, können Sie conda
verwenden, um die Umgebung einzurichten und die Bibliothek zu installieren.2.2 Grundstruktur von python-pptx
Importieren Sie die Bibliothek und verwenden Sie die KlassePresentation()
, um eine neue Präsentation zu erstellen. Dies ist die Basis für die Arbeit mit PowerPoint.from pptx import Presentation
prs = Presentation()
Mit diesem Code wird eine neue Präsentation erstellt, und Sie können anschließend Folien und Texte hinzufügen.
3. Erstellung und Speicherung einer Präsentation
3.1 Neue Präsentation erstellen
Zunächst wird erklärt, wie Sie mit python-pptx eine Präsentation erstellen und speichern. Der folgende Code zeigt, wie eine neue Präsentationsdatei erstellt und gespeichert wird:from pptx import Presentation
prs = Presentation()
prs.save('new_presentation.pptx')
Damit wird die PowerPoint-Datei im aktuellen Verzeichnis unter dem angegebenen Namen gespeichert.3.2 Folien hinzufügen
Um einer Präsentation Folien hinzuzufügen, verwenden Sie die Methodeadd_slide()
. Das Layout der Folien kann aus 11 Vorlagen ausgewählt werden.slide_layout = prs.slide_layouts[0] # Titelfolie auswählen
slide = prs.slides.add_slide(slide_layout)
Mit diesem Code wird eine neue Folie basierend auf dem gewählten Layout hinzugefügt.4. Bearbeitung von Folieninhalten
4.1 Text einfügen und formatieren
Beim Einfügen von Text in eine Folie werden Platzhalter (z. B. Titel- oder Untertitelbereiche) verwendet. Anschließend können Sie mit dem ObjektTextFrame
die Formatierung anpassen. Beispiel:title = slide.shapes.title
subtitle = slide.placeholders[1]
title.text = "Titel der Präsentation"
subtitle.text = "Untertitel"
Darüber hinaus können Sie Schriftgröße, Farbe oder Zeilenumbrüche hinzufügen:title.text = "Automatisch generierte
Folie mit Python"
4.2 Bilder und Formen hinzufügen
Zum Einfügen von Bildern in Folien wird die Methodeadd_picture()
verwendet. Position und Größe können ebenfalls angegeben werden.from pptx.util import Inches
img_path = 'image.png'
left = Inches(1)
top = Inches(2)
slide.shapes.add_picture(img_path, left, top)
Zusätzlich können auch Formen aus dem PowerPoint-Menü per Programm hinzugefügt und gestaltet werden:from pptx.enum.shapes import MSO_SHAPE
shape = slide.shapes.add_shape(MSO_SHAPE.ROUNDED_RECTANGLE, Inches(1), Inches(1), Inches(2), Inches(1))
shape.text = "Text in Form"

5. Erweiterte Automatisierungstechniken
5.1 Automatische Folienerstellung
Mit Schleifen können Sie große Mengen an Folien automatisch generieren. Beispiel:for i in range(10):
slide_layout = prs.slide_layouts[1]
slide = prs.slides.add_slide(slide_layout)
title = slide.shapes.title
title.text = f"Folie {i+1}"
Dieser Code erzeugt 10 Folien, die automatisch nummeriert werden.5.2 Bearbeitung bestehender Präsentationen
Es ist auch möglich, bestehende PowerPoint-Dateien zu laden und zu bearbeiten. Beispiel: den Titel der ersten Folie aktualisieren.prs = Presentation('existing_presentation.pptx')
slide = prs.slides[0]
title = slide.shapes.title
title.text = "Aktualisierter Titel"
prs.save('updated_presentation.pptx')