Aspose.Slides FOSS for Python είναι μια βιβλιοθήκη καθαρά Python αδειοδοτημένη με MIT για εργασία με αρχεία PowerPoint .pptx. Εγκαταστήστε την με μία εντολή pip και ξεκινήστε αμέσως τη δημιουργία, ανάγνωση και επεξεργασία παρουσιάσεων χωρίς την εγκατάσταση του Microsoft Office ή οποιουδήποτε ιδιόκτητου χρόνου εκτέλεσης.
Η βιβλιοθήκη εκθέτει ένα API Presentation που βασίζεται στα Presentation, Slide, Shape, TextFrame, Paragraph και Portion, το εννοιολογικό μοντέλο που χρησιμοποιεί το ίδιο το PowerPoint. Προσθέστε και αφαιρέστε διαφάνειες, εισάγετε AutoShapes, Πίνακες και Συνδέσμους, μορφοποιήστε κείμενο σε επίπεδο χαρακτήρα με έντονη, πλάγια, μέγεθος γραμματοσειράς και χρώμα, εφαρμόστε συμπαγείς ή διαβαθμισμένες γεμίσεις και προσθέστε οπτικά εφέ (σκιά, λάμψη, θόλωση, αντανάκλαση).
Το πρότυπο διαχειριστή περιβάλλοντος εξασφαλίζει αξιόπιστο καθαρισμό πόρων: πάντα ανοίξτε ένα Presentation με with slides.Presentation(...) as prs:. Άγνωστα τμήματα XML που εντοπίζονται κατά τη φόρτωση διατηρούνται ακριβώς όπως είναι κατά την αποθήκευση, έτσι η επαναφόρτωση δεν καταστρέφει ποτέ περιεχόμενο που η βιβλιοθήκη δεν έχει ακόμη καταλάβει. Η βιβλιοθήκη απαιτεί Python 3.10 ή νεότερη έκδοση και εξαρτάται μόνο από το lxml, το οποίο εγκαθίσταται αυτόματα.
.pptx files.Portion objects.Aspose.Slides FOSS installs with a single pip install aspose-slides-foss command. The only runtime dependency is lxml, installed automatically. There are no native extensions to compile.
The API mirrors PowerPoint’s own object model (Presentation, Slide, Shape, TextFrame, Paragraph, Portion), so anyone familiar with the PowerPoint object model can use the library immediately. It is MIT-licensed, open-source on GitHub, and requires Python 3.10 or later.
Use the context manager (with slides.Presentation() as prs:) to ensure the PPTX is always closed and resources are freed. add_auto_shape() takes a ShapeType enum, then x/y position and width/height in points — the shape’s text_frame.text property sets the label in one line.
pip install aspose-slides-foss
import aspose.slides_foss as slides
from aspose.slides_foss.export import SaveFormat
with slides.Presentation() as prs:
slide = prs.slides[0]
# Add a rectangle AutoShape
shape = slide.shapes.add_auto_shape(
slides.ShapeType.RECTANGLE, 50, 50, 400, 150
)
shape.text_frame.text = "Hello, Aspose.Slides!"
prs.save("output.pptx", SaveFormat.PPTX)
Text formatting works at the Portion level — the smallest unit of a run of characters. Open the saved file, navigate to the first portion of the first paragraph, and set font properties directly. Shape fill is independent: set fill_type to SOLID and assign a color to solid_fill_color.color.
import aspose.slides_foss as slides
from aspose.slides_foss import NullableBool, FillType
from aspose.slides_foss.drawing import Color
from aspose.slides_foss.export import SaveFormat
with slides.Presentation("output.pptx") as prs:
shape = prs.slides[0].shapes[0]
portion = shape.text_frame.paragraphs[0].portions[0]
# Bold, 18pt, dark-blue text
portion.portion_format.font_bold = NullableBool.TRUE
portion.portion_format.font_height = 18
portion.portion_format.fill_format.fill_type = FillType.SOLID
portion.portion_format.fill_format.solid_fill_color.color = Color.dark_blue
# Solid background fill on the shape
shape.fill_format.fill_type = FillType.SOLID
shape.fill_format.solid_fill_color.color = Color.alice_blue
prs.save("formatted.pptx", SaveFormat.PPTX)
It is a free, MIT-licensed pure-Python library for creating, reading, and editing PowerPoint .pptx presentations without requiring Microsoft Office.
PPTX is the supported read/write format. Export to PDF, HTML, SVG, or images is not available in this edition.
No. Aspose.Slides FOSS is a pure-Python library with no dependency on Microsoft Office, COM automation, or any proprietary runtime.
Run pip install aspose-slides-foss. The only dependency is lxml, installed automatically. Python 3.10 or later is required.
Yes. The library supports outer shadow, glow, blur, and reflection effects on any shape object.
Yes. Always open a Presentation with with slides.Presentation(...) as prs: to ensure reliable resource cleanup.
No. Unknown XML parts encountered during load are preserved verbatim on save, so content the library does not yet understand is never lost.
The library is MIT-licensed and hosted on GitHub. Bug reports and pull requests are welcome.