Giriş

Aspose.Slides FOSS for Python artık PyPI’de mevcut: Python’da tamamen Microsoft Office veya herhangi bir tescilli çalışma zamanına bağımlı olmadan PowerPoint .pptx dosyalarını oluşturmak, okumak ve düzenlemek için ücretsiz, MIT lisanslı bir kütüphane.

Kütüphane, programlı olarak sunum dosyaları oluşturması veya manipüle etmesi gereken geliştiriciler için tasarlanmıştır: veriden slayt desteleri otomatikleştirme, yüklenen PPTX dosyalarından metin ve meta verileri çıkarma, sunuma dayalı raporlama boru hatları oluşturma veya sunum oluşturmayı web uygulamalarına yerleştirme. Çünkü aspose-slides-foss sadece lxml bağımlılığına sahip saf bir Python’dur, Windows, macOS, Linux ve Docker konteynerlerinde aynı şekilde dağıtılır.

Temel Özellikler

  • Full round-trip PPTX support: Herhangi bir .pptx dosyasını açın, içeriğini değiştirin ve kütüphanenin henüz anlamadığı bilinmeyen XML bölümlerini kaybetmeden geri kaydedin.
  • Slides management: prs.slides kullanarak slayt ekleyin, kaldırın ve yineleyin; sunum slides.Presentation() sonrası bir boş slaytla başlar.
  • AutoShapes, Tables, and Connectors: Şekilleri slide.shapes.add_auto_shape() ile, tablo verilerini slide.shapes.add_table() ile ve şekiller arasındaki görsel bağlayıcıları slide.shapes.add_connector() ile ekleyin.
  • Rich text formatting: Metni karakter düzeyinde PortionFormat ile biçimlendirin: yazı tipi boyutu, kalın, italik, altı çizili ve ARGB renkleri FillType.SOLID ve Color.from_argb() aracılığıyla.
  • Fill types: Herhangi bir şekle FillType.SOLID, GRADIENT, PATTERN veya PICTURE dolgularını uygulayın.
  • Visual effects: Dış gölge, parıltı, yumuşak kenar, bulanıklaştırma, yansıma ve iç gölge shape.effect_format aracılığıyla.
  • 3D formatting: Kırma, kamera, ışık düzeni, malzeme ve ekstrüzyon derinliği shape.three_d_format ile.
  • Speaker notes: Her slayta not metnini notes_slide_manager.add_notes_slide() aracılığıyla ekleyin.
  • Threaded comments: Yazar meta verileri ve slayt konumu ile yorum ekleyin.
  • Embedded images: Dosya yolundan, baytlardan veya io.BytesIO akışından gömün.
  • Document properties: Çekirdek, uygulama ve özel özellikleri okuyun ve yazın.

Başlarken

PyPI’den kurun. Python 3.10 veya daha yenisi gereklidir; lxml otomatik olarak kurulur.

pip install aspose-slides-foss

Şekil ile ilk sunumunuzu oluşturun ve kaydedin:

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)

Her zaman Presentation öğesini bir with bloğu içinde kullanın; bu, blok çıktığında tüm iç kaynakların serbest bırakılmasını sağlar.

Metin Biçimlendirme Örneği

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)

Mevcut Sınırlamalar

Bu sürümde aşağıdaki alanlar NotImplementedError hatasını tetikler:

  • Grafikler, SmartArt ve OLE nesneleri
  • Animasyonlar ve slayt geçişleri
  • PDF, HTML, SVG veya görüntü formatlarına dışa aktarım
  • Köprüler, eylem ayarları, VBA makroları ve dijital imzalar

Yükleme sırasında karşılaşılan bilinmeyen XML bölümleri kaydetme sırasında olduğu gibi korunur, böylece diğer araçlar tarafından üretilen PPTX dosyaları güvenli bir şekilde round‑trip yapılır.

Ayrıca bakınız