Python でプレゼンテーション用フォールバックフォントを指定する

フォールバックフォントの指定

Aspose.Slides は IFontFallBackRule インターフェイスと FontFallBackRule クラスをサポートし、フォールバックフォントを適用するルールを指定できます。FontFallBackRule クラスは、見つからなかったグリフを検索するために使用される Unicode 範囲と、適切なグリフを含む可能性のあるフォントのリストとの関連を表します:

startUnicodeIndex = 0x0B80
endUnicodeIndex = 0x0BFF

firstRule = slides.FontFallBackRule(startUnicodeIndex, endUnicodeIndex, "Vijaya")
secondRule = slides.FontFallBackRule(0x3040, 0x309F, "MS Mincho, MS Gothic")

#複数の方法でフォントリストを追加できます:
fontNames =  ["Segoe UI Emoji, Segoe UI Symbol", "Arial" ]

thirdRule = slides.FontFallBackRule(0x1F300, 0x1F64F, fontNames)

既存の FontFallBackRule オブジェクトに対して、フォールバックフォントを Remove() で削除したり、AddFallBackFonts() で追加したりすることも可能です。

複数の Unicode 範囲に対してフォールバックフォント置換ルールを指定する必要がある場合は、FontFallBackRulesCollection を使用して FontFallBackRule オブジェクトのリストを整理できます。

FAQ

フォールバックフォント、フォント置換、フォント埋め込みの違いは何ですか?

フォールバックフォントは、プライマリフォントに文字が欠けている場合にのみ使用されます。フォント置換 は、指定されたフォント全体を別のフォントに置き換えます。フォント埋め込み は、フォントを出力ファイルにパッケージ化し、受信者が意図した通りにテキストを表示できるようにします。

PDF、PNG、SVG などへのエクスポート時にもフォールバックフォントは適用されますか、それとも画面表示時だけですか?

はい。フォールバックは、文字を描画する必要があるすべての レンダリングおよびエクスポート操作 に影響します。

フォールバックの設定はプレゼンテーションファイル自体を変更しますか? 将来開くときに設定は保持されますか?

いいえ。フォールバックルールはコード内の実行時レンダリング設定であり、.pptx ファイルに保存されず、PowerPoint では表示されません。

オペレーティングシステム(Windows/Linux/macOS)やフォントディレクトリの設定はフォールバック選択に影響しますか?

はい。エンジンは利用可能なシステムフォルダや、指定した 追加パス からフォントを解決します。フォントが実際に存在しない場合、そのフォントを参照するルールは効果を発揮できません。

フォールバックは WordArt、SmartArt、チャートでも機能しますか?

はい。これらのオブジェクトにテキストが含まれる場合、同じグリフ置換メカニズムが適用され、欠落文字がレンダリングされます。