TableSubstitutionRule

TableSubstitutionRule class

Ersetzungsregel für Tabellenschriftarten.

public class TableSubstitutionRule : FontSubstitutionRule

Eigenschaften

Name Beschreibung
virtual Enabled { get; set; } Gibt an, ob die Regel aktiviert ist oder nicht.

Methoden

Name Beschreibung
AddSubstitutes(string, params string[]) Fügt Ersatzschriftnamen für den angegebenen Originalschriftnamen hinzu.
GetSubstitutes(string) Gibt ein Array zurück, das Ersatzschriftnamen für den angegebenen ursprünglichen Schriftartnamen enthält.
Load(Stream) Lädt Tabellenersetzungseinstellungen aus dem XML-Stream.
Load(string) Lädt Tabellenersetzungseinstellungen aus der XML-Datei.
LoadAndroidSettings() Lädt vordefinierte Tabellenersetzungseinstellungen für die Linux-Plattform.
LoadLinuxSettings() Lädt vordefinierte Tabellenersetzungseinstellungen für die Linux-Plattform.
LoadWindowsSettings() Lädt vordefinierte Tabellenersetzungseinstellungen für die Windows-Plattform.
Save(Stream) Speichert die aktuellen Tabellenersetzungseinstellungen im Stream.
Save(string) Speichert die aktuellen Tabellenersetzungseinstellungen in einer Datei.
SetSubstitutes(string, params string[]) Ersatzschriftnamen für den angegebenen Originalschriftnamen überschreiben.

Bemerkungen

Diese Regel definiert die Liste der Ersatzzeichensatznamen, die verwendet werden sollen, wenn der Originalzeichensatz nicht verfügbar ist. Ersatzzeichensätze werden auf den Zeichensatznamen und die geprüftAltName (falls vorhanden).

Beispiele

Zeigt, wie auf Schriftartersetzungstabellen für Windows und Linux zugegriffen wird.

Document doc = new Document();
FontSettings fontSettings = new FontSettings();
doc.FontSettings = fontSettings;

// Erstellen Sie eine neue Tabellenersetzungsregel und laden Sie die standardmäßige Schriftartenersetzungstabelle von Microsoft Windows.
TableSubstitutionRule tableSubstitutionRule = fontSettings.SubstitutionSettings.TableSubstitution;
tableSubstitutionRule.LoadWindowsSettings();

// In Windows ist der Standardersatz für die Schriftart "Times New Roman CE" "Times New Roman".
Assert.AreEqual(new[] {"Times New Roman"},
    tableSubstitutionRule.GetSubstitutes("Times New Roman CE").ToArray());

// Wir können die Tabelle in Form eines XML-Dokuments speichern.
tableSubstitutionRule.Save(ArtifactsDir + "FontSettings.TableSubstitutionRule.Windows.xml");

// Linux hat seine eigene Substitutionstabelle.
// Es gibt mehrere Ersatzschriftarten für "Times New Roman CE".
// Wenn der erste Ersatz "FreeSerif" ebenfalls nicht verfügbar ist,
// Diese Regel durchläuft die anderen im Array, bis sie eine verfügbare findet.
tableSubstitutionRule.LoadLinuxSettings();
Assert.AreEqual(new[] {"FreeSerif", "Liberation Serif", "DejaVu Serif"},
    tableSubstitutionRule.GetSubstitutes("Times New Roman CE").ToArray());

// Speichern Sie die Linux-Ersetzungstabelle in Form eines XML-Dokuments mithilfe eines Streams.
using (FileStream fileStream = new FileStream(ArtifactsDir + "FontSettings.TableSubstitutionRule.Linux.xml",
    FileMode.Create))
{
    tableSubstitutionRule.Save(fileStream);
}

Siehe auch