Introductie
Aspose.Slides FOSS for Python is now available on PyPI: a free, MIT-licensed library for creating, reading, and editing PowerPoint .pptx bestanden volledig in Python, zonder afhankelijkheid van Microsoft Office of enige propriëtaire runtime.
De bibliotheek is ontworpen voor ontwikkelaars die programmatisch presentatiebestanden moeten genereren of manipuleren: het automatiseren van dia‑sets vanuit data, het extraheren van tekst en metadata uit geüploade PPTX‑bestanden, het bouwen van rapportage‑pijplijnen op basis van presentaties, of het integreren van presentatie‑creatie in webapplicaties. Omdat aspose-slides-foss is pure Python met alleen lxml als afhankelijkheid, wordt het identiek ingezet op Windows, macOS, Linux en Docker‑containers.
Belangrijkste functies
- Volledige round‑trip PPTX‑ondersteuning: Open elk
.pptxbestand, wijzig de inhoud en sla het opnieuw op zonder onbekende XML‑onderdelen te verliezen die de bibliotheek nog niet begrijpt. - Dia‑beheer: Voeg dia’s toe, verwijder ze en doorloop ze met behulp van
prs.slides; de presentatie begint met één lege dia naslides.Presentation(). - AutoShapes, Tabellen en Connectors: Voeg vormen in via
slide.shapes.add_auto_shape(), tabelgegevens viaslide.shapes.add_table(), en visuele connectors tussen vormen viaslide.shapes.add_connector(). - Rich‑text opmaak: Formatteer tekst op teken‑niveau met
PortionFormat: lettergrootte, vet, cursief, onderstrepen, en ARGB-kleur viaFillType.SOLIDenColor.from_argb(). - Opvultypen: Toepassen
FillType.SOLID,GRADIENT,PATTERN, ofPICTUREvult elke vorm. - Visuele effecten: Buitenste schaduw, gloed, zachte rand, vervaging, reflectie en binnenste schaduw via
shape.effect_format. - 3D formatting: Afschuining, camera, lichtinstallatie, materiaal en extrusiediepte via
shape.three_d_format. - Sprekersnotities: Voeg notitietekst toe aan elke dia via
notes_slide_manager.add_notes_slide(). - Gegroepeerde opmerkingen: Voeg opmerkingen toe met auteursmetadata en dia-positie.
- Ingesloten afbeeldingen: Insluiten vanaf bestandspad, bytes of
io.BytesIOstream. - Documenteigenschappen: Lees en schrijf kern-, app- en aangepaste eigenschappen.
Aan de slag
Installeer vanaf PyPI. Python 3.10 of hoger is vereist; lxml wordt automatisch geïnstalleerd.
pip install aspose-slides-foss
Maak uw eerste presentatie met een vorm en sla deze op:
import aspose.slides_foss as slides
from aspose.slides_foss.export import SaveFormat
from aspose.slides_foss import ShapeType
with slides.Presentation() as prs:
slide = prs.slides[0]
shape = slide.shapes.add_auto_shape(ShapeType.RECTANGLE, 50, 50, 400, 120)
shape.add_text_frame("Hello from Aspose.Slides FOSS!")
prs.save("hello.pptx", SaveFormat.PPTX)
Gebruik altijd Presentation binnen een with blok; dit zorgt ervoor dat alle interne bronnen worden vrijgegeven wanneer het blok wordt verlaten.
Voorbeeld van tekstopmaak
import aspose.slides_foss as slides
from aspose.slides_foss import ShapeType, NullableBool, FillType
from aspose.slides_foss.drawing import Color
from aspose.slides_foss.export import SaveFormat
with slides.Presentation() as prs:
shape = prs.slides[0].shapes.add_auto_shape(ShapeType.RECTANGLE, 50, 50, 500, 150)
tf = shape.add_text_frame("Bold heading in corporate blue")
fmt = tf.paragraphs[0].portions[0].portion_format
fmt.font_height = 28
fmt.font_bold = NullableBool.TRUE
fmt.fill_format.fill_type = FillType.SOLID
fmt.fill_format.solid_fill_color.color = Color.from_argb(255, 0, 70, 127)
prs.save("formatted.pptx", SaveFormat.PPTX)
Huidige beperkingen
De volgende gebieden veroorzaken NotImplementedError in deze release:
- Grafieken, SmartArt en OLE-objecten
- Animaties en dia‑overgangen
- Exporteren naar PDF, HTML, SVG of afbeeldingsformaten
- Hyperlinks, actieregels, VBA-macro’s en digitale handtekeningen
Onbekende XML-onderdelen die tijdens het laden worden aangetroffen, worden bij het opslaan letterlijk bewaard, zodat PPTX‑bestanden die door andere tools zijn gemaakt veilig round‑tripen.