Python üzerinden Java ile Yedek Yazı Tipleriyle Sunumları Render Et

Genel Bakış

Aspose.Slides, yedek yazı tipi kurallarını kullanarak sunumları render etmenizi sağlar. Bu makale, bir yedek yazı tipi kural koleksiyonu oluşturmayı, kuralları yedek yazı tiplerini kaldırarak ya da ekleyerek değiştirmeyi ve koleksiyonu FontsManager.setFontFallBackRulesCollection yöntemiyle atamayı gösterir.

Yedek yazı tipi kural koleksiyonu sunumun FontsManager nesnesine atandığında, kurallar sunumu kaydetme, render etme ve dönüştürme gibi işlemler sırasında uygulanır. Örnek, bir slayt küçük görseli oluştururken ve JPEG görüntüsü olarak kaydederken yapılandırılmış kuralların nasıl kullanılacağını gösterir.

Yedek Yazı Tipi Kurallarını Kullanarak Slaytı Görüntüleme

Aşağıdaki örnek aşağıdaki adımları içerir:

  1. Yedek yazı tipi kural koleksiyonu oluştur.
  2. Kaldır bir kuraldan yedek yazı tipini ve yedek yazı tipleri ekle başka bir kurala.
  3. setFontFallBackRulesCollection yöntemini, getFontsManager tarafından döndürülen font yöneticisi üzerinde kullanarak kural koleksiyonunu atayın.
  4. Presentation.save yöntemini kullanarak sunumu aynı formatta ya da başka bir formatta kaydedin. Yedek yazı tipi kural koleksiyonu FontsManager nesnesine atandıktan sonra, bu kurallar sunum üzerinde yapılan işlemler sırasında uygulanır: kaydetme, render etme, dönüştürme vb.
import jpype
import asposeslides

if not jpype.isJVMStarted():
    jpype.startJVM()

from asposeslides.api import FontFallBackRule, FontFallBackRulesCollection, ImageFormat, Presentation

# Yeni bir kural koleksiyonu oluştur.
fallback_rules = FontFallBackRulesCollection()

# Birden fazla kural oluştur.
cyrillic_rule = FontFallBackRule(0x400, 0x4FF, "Times New Roman")
fallback_rules.add(cyrillic_rule)
arabic_rule = FontFallBackRule(0x600, 0x6FF, "Tahoma, Arial")
fallback_rules.add(arabic_rule)

for fallback_rule in fallback_rules:
    # Yedek yazı tipi "Tahoma"yı kurallardan kaldırmayı deneyin.
    fallback_rule.remove("Tahoma")

    # Belirtilen aralık için kuralları güncelle.
    if fallback_rule.getRangeEndIndex() >= 0x400 and fallback_rule.getRangeStartIndex() < 0x500:
        fallback_rule.addFallBackFonts("Verdana")

# Mevcut bir kuralı kaldır, renderleme için en az bir kural bırak.
if fallback_rules.size() > 1:
    rule_to_remove = fallback_rules.get_Item(1)
    fallback_rules.remove(rule_to_remove)

presentation = Presentation("input.pptx")
try:
    # Hazırlanan kural koleksiyonunu ata.
    presentation.getFontsManager().setFontFallBackRulesCollection(fallback_rules)

    # Yapılandırılmış kural koleksiyonunu kullanarak bir küçük görsel render et.
    slide_image = presentation.getSlides().get_Item(0).getImage(1.0, 1.0)
    try:
        # Görüntüyü JPEG formatında diske kaydet.
        slide_image.save("Slide_0.jpg", ImageFormat.Jpeg)
    finally:
        slide_image.dispose()
finally:
    presentation.dispose()