在 Python 中透過 Java 配置回退字型集合

概述

Aspose.Slides 允許您為簡報設定一組回退字型規則的集合。每個回退規則由 FontFallBackRule 類別表示,且可加入至 FontFallBackRulesCollection。

建立集合後,您可以透過簡報的 FontsManager 的 setFontFallBackRulesCollection 方法將其指派。FontsManager 控制整個簡報的字型,而每個 Presentation 實例都有自己的 FontsManager。

一旦使用回退字型集合初始化 FontsManager,在簡報呈現過程中就會套用指定的回退字型。

套用回退規則

可以將 FontFallBackRule 類別的實例組織成 FontFallBackRulesCollection。您可以在集合中新增或移除規則。

然後可透過 FontsManager 類別的 setFontFallBackRulesCollection 方法將此集合指派,該類別控制簡報的字型。

每個 Presentation 都有一個 getFontsManager 方法,可回傳其自身的 FontsManager 類別實例。

以下範例示範如何建立回退字型規則集合並將其指派給簡報的 FontsManager:

import jpype
import asposeslides

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

from asposeslides.api import FontFallBackRule, FontFallBackRulesCollection, Presentation

presentation = Presentation()
try:
    fallback_rules = FontFallBackRulesCollection()

    tamil_rule = FontFallBackRule(0x0B80, 0x0BFF, "Vijaya")
    fallback_rules.add(tamil_rule)
    hiragana_rule = FontFallBackRule(0x3040, 0x309F, "MS Mincho, MS Gothic")
    fallback_rules.add(hiragana_rule)

    presentation.getFontsManager().setFontFallBackRulesCollection(fallback_rules)
finally:
    presentation.dispose()

在使用回退字型集合初始化 FontsManager 後,回退字型會在簡報呈現時套用。

常見問題

我的回退規則會被嵌入 PPTX 檔案並在儲存後於 PowerPoint 中可見嗎?

不會。回退規則是執行時的呈現設定;它們不會序列化至 PPTX,也不會在 PowerPoint 的使用者介面中顯示。

回退規則會套用於 SmartArt、WordArt、圖表和表格中的文字嗎?

是的。這些物件中的所有文字皆使用相同的字形替換機制。

Aspose 是否會隨函式庫一起分發任何字型?

不會。字型須由您自行加入並使用,您自行負責。

缺少字型的替換/替代與缺少字形的回退可以同時使用嗎?

可以。它們是同一字型解析流程中獨立的階段:首先引擎解決字型可用性(replacement/substitution),接著回退會填補可用字型中缺少的字形。