Python üzerinden Java ile Sunumlar Oluşturma
Genel Bakış
Bu makale, Aspose.Slides for Python via Java kullanarak bir sunum nasıl oluşturulur, ilk slayta metin içeren bir şekil nasıl eklenir ve sonuç bir PPTX dosyası olarak nasıl kaydedilir, konularını gösterir. SSS bölümü çıktı formatları, şablonlar, slayt boyutlandırması, bellek kullanımı, çoklu iş parçacığı, lisanslama, dijital imzalar ve VBA desteği gibi konuları kapsar.
Başlamadan önce Python, bir JDK, JPype ve Aspose.Slides for Python via Java’ı kurun. Windows, Linux ve macOS için adımları görmek üzere Kurulum sayfasına bakın.
Sunum Oluşturma
Aspose.Slides for Python via Java ile sıfırdan bir PowerPoint dosyası oluşturmak, [Presentation] sınıfının bir örneğini oluşturmak kadar basittir. Yapıcı, tek bir slayttan oluşan boş bir sunum otomatik olarak sağlar ve bu sayede şekiller, metin, grafikler veya uygulamanızın ihtiyaç duyduğu diğer içerikler için hemen bir tuval elde edersiniz. Bu slaytı değiştirdikten—veya yenilerini ekledikten—sonucu PPTX, eski PPT ya da hatta OpenDocument formatlarında kalıcı hale getirebilirsiniz. Aşağıdaki kısa kod örneği, ilk slayta basit bir şekil ekleyerek bu iş akışını gösterir.
- Bir [Presentation] örneği oluşturun.
- İlk slaytı indeks değeri 0 ile alın.
- [ShapeCollection.addAutoShape] yöntemiyle [ShapeType.Cloud] türünde bir [AutoShape] ekleyin.
- Şeklin metnini [TextFrame.setText] ile ayarlayın.
- [Presentation.save] metodunu [SaveFormat.Pptx] ile kullanarak sunumu kaydedin.
İşte örnek, Java Sanal Makinesi (JVM) hâlâ çalışmıyorsa başlatır, ilk slayta metinli bir bulut şekli ekler ve sunumu kaydeder. Dosyayı create_presentation.py olarak kaydedin:
import jpype
import asposeslides
if not jpype.isJVMStarted():
jpype.startJVM()
from asposeslides.api import Presentation, SaveFormat, ShapeType
# Bir sunumu tek boş slaytla oluştur.
presentation = Presentation()
try:
# İlk slaytı al.
slide = presentation.getSlides().get_Item(0)
# Bir bulut şekli ekle ve metnini ayarla.
auto_shape = slide.getShapes().addAutoShape(ShapeType.Cloud, 20, 20, 200, 80)
auto_shape.getTextFrame().setText("Hello, Aspose!")
# Sunumu PPTX dosyası olarak kaydet.
presentation.save("new_presentation.pptx", SaveFormat.Pptx)
finally:
presentation.dispose()
Paketleri kurduğunuz ortamda betiği çalıştırın:
python create_presentation.py
Bulutun sol üst köşesi slaytın sol ve üst kenarlarından 20 puan uzaklıkta ve bulut 200 puan genişliğinde ve 80 puan yüksekliğindedir. Betik, new_presentation.pptx dosyasını geçerli çalışma dizinine kaydeder; bu dosya, bulutu ve metnini içeren bir slayt içerir. JVM, Python işlemi sona erene kadar çalışmaya devam eder; bkz. Sınırlamalar ve API Farklılıkları. Lisans olmadan Aspose.Slides, kaydettiği her slayta bir değerlendirme filigranı metin kutusu ekler; bkz. Lisanslama.
Sonuç:

SSS
Yeni bir sunumu hangi formatlarda kaydedebilirim?
Yeni bir sunumu PPTX, PPT ve ODP formatlarında kaydedebilir ve ayrıca PDF, XPS, HTML, SVG ve görüntüler gibi diğer formatlara dışa aktarabilirsiniz.
Şablondan (POTX/POTM) başlatıp normal bir PPTX olarak kaydedebilir miyim?
Evet. Şablonu yükleyip istediğiniz formatta kaydedebilirsiniz; POTX/POTM/PPTM ve benzeri formatlar desteklenir.
Sunum oluştururken slayt boyutu/en‑boy oranını nasıl kontrol ederim?
Şu yolu kullanarak slayt boyutunu (4:3 ve 16:9 gibi ön ayarlar ya da özel boyutlar dahil) ayarlayın ve içeriğin nasıl ölçekleneceğini seçin.
Boyutlar ve koordinatlar hangi birimde ölçülür?
Puan (point) cinsindendir: 1 inç 72 birime eşittir.
Bellek kullanımını azaltmak için çok sayıda medya dosyası içeren büyük sunumları nasıl yönetebilirim?
Bellek kullanımını azaltmak için BLOB yönetim stratejilerini kullanın, geçici dosyalar aracılığıyla bellek içi depolamayı sınırlayın ve tamamen bellek içi akışlardan ziyade dosya tabanlı iş akışlarını tercih edin.
Sunumları paralel olarak oluşturup/kaydedebilir miyim?
Aynı Presentation örneği üzerinde birden fazla iş parçacığı işlem yapamazsınız. Her iş parçacığı veya süreç için ayrı, izole edilmiş örnekler çalıştırın.
Deneme filigranını ve sınırlamaları nasıl kaldırabilirim?
Bir lisans uygulayın süreç başına bir kez. Lisans XML’i değiştirilmemiş kalmalı ve birden fazla iş parçacığı kullanılıyorsa lisans kurulumu senkronize edilmelidir.
Oluşturduğum PPTX’yi dijital olarak imzalayabilir miyim?
Evet. Sunumlar için Dijital imzalar (ekleme ve doğrulama) desteklenir.
Oluşturulan sunumlarda makrolar (VBA) destekleniyor mu?
Evet. VBA projeleri oluşturabilir/düzenleyebilirsiniz ve PPTM/PPSM gibi makro etkin dosyaları kaydedebilirsiniz.