.NET でフォールバック フォントを使用したプレゼンテーションのレンダリング
Contents
[
Hide
]
以下の例には次の手順が含まれています:
- フォールバック フォント ルール コレクションを作成。
- フォールバック フォント ルールを Remove() し、別のルールに AddFallBackFonts() を追加します。
- ルール コレクションを FontsManager.FontFallBackRulesCollection プロパティに設定します。
- Presentation.Save() メソッドを使用して、プレゼンテーションを同じ形式で保存したり、別の形式で保存したりできます。フォールバック フォント ルール コレクションが FontsManager に設定された後、これらのルールはプレゼンテーションに対するすべての操作(保存、レンダリング、変換など)で適用されます。
// ルールコレクションの新しいインスタンスを作成
IFontFallBackRulesCollection rulesList = new FontFallBackRulesCollection();
// いくつかのルールを作成
rulesList.Add(new FontFallBackRule(0x400, 0x4FF, "Times New Roman"));
//rulesList.Add(new FontFallBackRule(...));
foreach (IFontFallBackRule fallBackRule in rulesList)
{
// 読み込まれたルールからフォールバックフォント「Tahoma」を削除しようとしています
fallBackRule.Remove("Tahoma");
// 指定された範囲のルールを更新します
if ((fallBackRule.RangeEndIndex >= 0x4000) && (fallBackRule.RangeStartIndex < 0x5000))
fallBackRule.AddFallBackFonts("Verdana");
}
// また、リストから既存のルールを削除できます
if (rulesList.Count > 0)
rulesList.Remove(rulesList[0]);
using (Presentation pres = new Presentation("input.pptx"))
{
// 使用するために準備したルールリストを割り当てています
pres.FontsManager.FontFallBackRulesCollection = rulesList;
// 初期化されたルールコレクションを使用してサムネイルをレンダリングし、PNGで保存します
using (IImage image = pres.Slides[0].GetImage(1f, 1f))
{
image.Save("Slide_0.png", ImageFormat.Png);
}
}
プレゼンテーションの保存と変換 の詳細をご覧ください。