Python'da Sunum Açma

Giriş

Aspose.Slides for Python via .NET, dosyalar ve akışlardan PowerPoint ve OpenDocument sunumlarını yükleyebilir. Bir sunum yüklendikten sonra, yapısını inceleyebilir, slaytları düzenleyebilir, kaynakları yönetebilir ve orijinal ya da başka desteklenen bir biçimde kaydedebilirsiniz.

Yükleme davranışı, LoadOptions sınıfı aracılığıyla özelleştirilebilir. Örneğin, açma parolası belirtebilir, büyük ikili nesneleri bellekte tutmayabilir veya gömülü ikili verileri atlayabilirsiniz.

Sunumları Açma

Bir dosya veya akışı yükledikten sonra, uygulamanızın onu nasıl işleyeceğini seçmek için orijinal sunum biçimini belirleyebilirsiniz.

Mevcut bir sunumu açmak için dosya yolunu Presentation yapıcısına geçirin. Dosya tutucuları, geçici veriler ve diğer kaynakların hızlıca serbest bırakılması için bir with ifadesi kullanın.

Aşağıdaki Python örneği, bir sunumu nasıl açıp slayt sayısını alacağınızı gösterir:

import aspose.slides as slides

with slides.Presentation("sample.pptx") as presentation:
    print("Slide count: " + str(len(presentation.slides)))

Parola Korumalı Sunumları Açma

Açma parolası, sunum içeriğini şifreler. Sunumu tamamen yüklemek için doğru parolayı LoadOptions.password özelliğine atayın ve seçenekleri Presentation yapıcısına geçirin. Parola eksik ya da hatalı olduğunda yükleme başarısız olur.

import aspose.slides as slides

load_options = slides.LoadOptions()
load_options.password = "open_password"

with slides.Presentation("encrypted-presentation.pptx", load_options) as presentation:
    print("Slide count: " + str(len(presentation.slides)))

Parola algılama, doğrulama ve şifreleme iş akışları için Parola ile Korunan Sunumlar bölümüne bakın. Şifrelenmiş bir sunum kasıtlı olarak genel belge özellikleriyle kaydedildiyse, bu özellikler parola olmadan okunabilir; bkz. Sunum Özelliklerini Yönetme.

Büyük Sunumları Açma

[LoadOptions.blob_management_options] Aspose.Slides’in resimler, ses ve video gibi büyük ikili nesneleri nasıl yönettiğini kontrol eder. Kaynak dosyayı kilitli tutabilir, geçici dosyalara izin verebilir ve bellekte tutulan BLOB veri miktarını sınırlayabilirsiniz.

Bu Python kodu, büyük bir sunumu (örneğin 2 GB) yüklemeyi gösterir:

import aspose.slides as slides
file_path = "large-presentation.pptx"

load_options = slides.LoadOptions()
load_options.blob_management_options.presentation_locking_behavior = slides.PresentationLockingBehavior.KEEP_LOCKED
load_options.blob_management_options.is_temporary_files_allowed = True
load_options.blob_management_options.max_blobs_bytes_in_memory = 10 * 1024 * 1024

with slides.Presentation(file_path, load_options) as presentation:
    presentation.slides[0].name = "Large presentation"
    presentation.save("large-presentation-copy.pptx", slides.export.SaveFormat.PPTX)

Gömülü İkili Nesneler Olmadan Sunumları Yükleme

Bir sunum, bir uygulamanın ihtiyacı olmayan veya tutmak istemediği gömülü ikili veriler içerebilir. Örnekler:

  • VBA projeleri, Presentation.vba_project aracılığıyla erişilebilir;
  • gömülü OLE verileri, OleEmbeddedDataInfo.embedded_file_data aracılığıyla erişilebilir;
  • ActiveX kontrol verileri, Control.active_x_control_binary aracılığıyla erişilebilir.

Yükleme sırasında bu ikili verileri kaldırmak için LoadOptions.delete_embedded_binary_objects özelliğini True olarak ayarlayın. Temizlenmiş sonucu kalıcı hale getirmek için yüklenen sunumu kaydedin.

Bu seçenek, istenmeyen gömülü içeriklere maruziyeti azaltır, ancak tam bir kötü yazılım tespiti veya içerik temizleme sistemi değildir.

import aspose.slides as slides

load_options = slides.LoadOptions()
load_options.delete_embedded_binary_objects = True

with slides.Presentation("presentation-with-embedded-data.pptx", load_options) as presentation:
    presentation.save("presentation-without-embedded-data.pptx", slides.export.SaveFormat.PPTX)

SSS

Bir dosyanın bozuk olduğunu ve açılamadığını nasıl anlayabilirim?
Aspose.Slides, yükleme sırasında bir ayrıştırma veya biçim istisnası fırlatır. Bu hatayı, hatalı parola hatasından ayrı olarak ele alın, böylece uygulama nedeni doğru şekilde raporlayabilir.

Gerekli yazı tipleri eksik olursa ne olur?
Sunum yine de yüklenebilir, ancak renderleme ve dışa aktarma yazı tiplerini değiştirebilir. Çıktının daha öngörülebilir olması için yazı tipi ikamesini yapılandırabilir veya özel yazı tipleri sağlayabilirsiniz.

Bir sunumu yüklemek, gömülü medyalarını da yükler mi?
Gömülü ses ve video, sunum nesne modeli aracılığıyla erişilebilir hale gelir. Dış kaynaklar, varsayılan kaynak yükleme davranışına göre çözülür ve konumlarına erişilemezse kullanılamaz olabilir.