Uvod

Aspose.Slides FOSS for Python is now available on PyPI: a free, MIT-licensed library for creating, reading, and editing PowerPoint .pptx datoteke u potpunosti u Python, bez zavisnosti od Microsoft Office-a ili bilo kojeg vlasničkog runtime-a.

Biblioteka je dizajnirana za programere koji trebaju programatski generisati ili manipulisati prezentacionim datotekama: automatizacija slajd setova iz podataka, izvlačenje teksta i metapodataka iz otpremljenih PPTX datoteka, izgradnja izveštajnih pipeline‑ova zasnovanih na prezentacijama, ili ugrađivanje kreiranja prezentacija u web aplikacije. Zato aspose-slides-foss je čisti Python sa samo lxml kao zavisnost, distribuira se identično na Windows, macOS, Linux i Docker kontejnerima.

Ključne karakteristike

  • Potpuna round‑trip podrška za PPTX: Otvorite bilo koju .pptx datoteku, izmenite njen sadržaj i sačuvajte je nazad bez gubitka nepoznatih XML delova koje biblioteka još ne razume.
  • Upravljanje slajdovima: Dodajte, uklonite i iterirajte slajdove koristeći prs.slides; prezentacija počinje jednim praznim slajdom nakon slides.Presentation().
  • AutoShapes, Tabele i Konektori: Ubacite oblike putem slide.shapes.add_auto_shape(), tabelarne podatke putem slide.shapes.add_table(), i vizuelne konektore između oblika putem slide.shapes.add_connector().
  • Obogaćeno formatiranje teksta: Formatirajte tekst na nivou karaktera uz PortionFormat: veličina fonta, podebljano, kurziv, podvučeno i ARGB boja putem FillType.SOLID i Color.from_argb().
  • Tipovi popunjavanja: Primeni FillType.SOLID, GRADIENT, PATTERN, ili PICTURE popunjavanja na bilo koji oblik.
  • Vizuelni efekti: Spoljna senka, sjaj, mekana ivica, zamućenje, refleksija i unutrašnja senka putem shape.effect_format.
  • 3D formatting:Ukošenje, kamera, rig za svetlo, materijal i dubina ekstrudiranja preko shape.three_d_format.
  • Napomene za govornika: Prikačite tekst napomena na svaki slajd putem notes_slide_manager.add_notes_slide().
  • Komentari u nitima: Dodajte komentare sa metapodacima autora i položajem slajda.
  • Ugrađene slike: Ugradite iz putanje fajla, bajtova, ili io.BytesIO tok.
  • Svojstva dokumenta: Čitanje i pisanje osnovnih, aplikacionih i prilagođenih svojstava.

Početak

Instalirajte sa PyPI. Python 3.10 ili noviji je obavezan; lxml se instalira automatski.

pip install aspose-slides-foss

Kreirajte svoju prvu prezentaciju sa oblikom i sačuvajte je:

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)

Uvek koristite Presentation unutar with bloka; ovo osigurava da se svi interni resursi oslobode kada blok završi.

Primer formatiranja teksta

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)

Trenutna ograničenja

Sledeća područja generišu NotImplementedError u ovom izdanju:

  • Grafikoni, SmartArt i OLE objekti
  • Animacije i prelazi slajdova
  • Izvoz u PDF, HTML, SVG ili formate slika
  • Hiperveze, podešavanja akcija, VBA makroi i digitalni potpisi

Nepoznati XML delovi koji se pojave prilikom učitavanja čuvaju se doslovno prilikom čuvanja, tako da PPTX fajlovi proizvedeni drugim alatima sigurno prolaze kroz ciklus učitavanja i čuvanja.

Vidi takođe