Präsentationen mit Fallback-Schriftarten in .NET rendern
Contents
[
Hide
]
Das folgende Beispiel enthält diese Schritte:
- Wir erstellen die Fallback-Schriftart-Regelsammlung.
- Remove() eine Fallback-Schriftart-Regel und AddFallBackFonts() zu einer anderen Regel.
- Setzen Sie die Regelsammlung auf die FontsManager.FontFallBackRulesCollection Eigenschaft.
- Mit der Presentation.Save() Methode können wir die Präsentation im selben Format speichern oder in ein anderes Format konvertieren. Nachdem die Fallback-Schriftart-Regelsammlung dem FontsManager zugewiesen wurde, werden diese Regeln bei allen Vorgängen mit der Präsentation angewendet: Speichern, Rendern, Konvertieren usw.
// Neue Instanz einer Regelsammlung erstellen
IFontFallBackRulesCollection rulesList = new FontFallBackRulesCollection();
// Eine Anzahl von Regeln erstellen
rulesList.Add(new FontFallBackRule(0x400, 0x4FF, "Times New Roman"));
//rulesList.Add(new FontFallBackRule(...));
foreach (IFontFallBackRule fallBackRule in rulesList)
{
// Versuchen, die Fallback-Schriftart "Tahoma" aus den geladenen Regeln zu entfernen
fallBackRule.Remove("Tahoma");
// Und die Regeln für den angegebenen Bereich aktualisieren
if ((fallBackRule.RangeEndIndex >= 0x4000) && (fallBackRule.RangeStartIndex < 0x5000))
fallBackRule.AddFallBackFonts("Verdana");
}
// Wir können auch vorhandene Regeln aus der Liste entfernen
if (rulesList.Count > 0)
rulesList.Remove(rulesList[0]);
using (Presentation pres = new Presentation("input.pptx"))
{
// Zuweisen einer vorbereiteten Regelliste zur Verwendung
pres.FontsManager.FontFallBackRulesCollection = rulesList;
// Rendern einer Miniatur mit der initialisierten Regelsammlung und Speichern als PNG
using (IImage image = pres.Slides[0].GetImage(1f, 1f))
{
image.Save("Slide_0.png", ImageFormat.Png);
}
}
Erfahren Sie mehr über Speichern und Konvertieren in Presentation.