Pengenalan

Aspose.Slides FOSS for Python is now available on PyPI: a free, MIT-licensed library for creating, reading, and editing PowerPoint .pptx fail sepenuhnya dalam Python, tanpa kebergantungan pada Microsoft Office atau mana-mana runtime proprietari.

Perpustakaan ini direka untuk pembangun yang perlu menjana atau memanipulasi fail persembahan secara programatik: mengautomasi dek slaid daripada data, mengekstrak teks dan metadata daripada fail PPTX yang dimuat naik, membina paip laporan berasaskan persembahan, atau menyematkan penciptaan persembahan ke dalam aplikasi web. Kerana aspose-slides-foss adalah Python tulen dengan hanya lxml sebagai kebergantungan, ia dipasang secara serupa pada Windows, macOS, Linux, dan kontena Docker.

Ciri-ciri Utama

  • Sokongan PPTX pusingan penuh: Buka mana-mana .pptx fail, ubah kandungannya, dan simpan semula tanpa kehilangan bahagian XML yang tidak diketahui yang belum difahami oleh perpustakaan.
  • Pengurusan slaid: Tambah, buang, dan ulangi slaid menggunakan prs.slides; persembahan bermula dengan satu slaid kosong selepas slides.Presentation().
  • AutoShapes, Jadual, dan Penyambung: Sisipkan bentuk melalui slide.shapes.add_auto_shape(), data tabular melalui slide.shapes.add_table(), dan penyambung visual antara bentuk melalui slide.shapes.add_connector().
  • Pemformatan teks kaya: Format teks pada peringkat aksara dengan PortionFormat: saiz fon, tebal, condong, garis bawah, dan warna ARGB melalui FillType.SOLID dan Color.from_argb().
  • Jenis Isian: Terap FillType.SOLID, GRADIENT, PATTERN, atau PICTURE mengisi ke sebarang bentuk.
  • Kesan visual: Bayang luar, cahaya, tepi lembut, kabur, pantulan, dan bayang dalam melalui shape.effect_format.
  • 3D formatting: Bevel, kamera, rig cahaya, bahan, dan kedalaman ekstrusi melalui shape.three_d_format.
  • Nota pembicara: Lampirkan teks nota ke setiap slaid melalui notes_slide_manager.add_notes_slide().
  • Komen berutas: Tambah komen dengan metadata pengarang dan kedudukan slaid.
  • Imej terbenam: Benamkan dari laluan fail, bait, atau io.BytesIO strim.
  • Sifat dokumen: Baca dan tulis sifat teras, aplikasi, dan khusus.

Mula Menggunakan

Pasang dari PyPI. Python 3.10 atau lebih baru diperlukan; lxml dipasang secara automatik.

pip install aspose-slides-foss

Cipta persembahan pertama anda dengan satu bentuk dan simpan ia:

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)

Sentiasa gunakan Presentation di dalam satu with blok; ini memastikan semua sumber dalaman dibebaskan apabila blok berakhir.

Contoh Pemformatan Teks

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)

Keterbatasan Semasa

Kawasan berikut menimbulkan NotImplementedError dalam versi ini:

  • Carta, SmartArt, dan objek OLE
  • Animasi dan peralihan slaid
  • Eksport ke PDF, HTML, SVG, atau format imej
  • Pautan hiper, tetapan tindakan, makro VBA, dan tandatangan digital

Bahagian XML yang tidak diketahui yang ditemui semasa pemuatan dipelihara secara verbatim semasa penyimpanan, jadi fail PPTX yang dihasilkan oleh alat lain dapat melakukan pusingan balik dengan selamat.

juga