TableSubstitutionRule

TableSubstitutionRule class

Regola di sostituzione dei caratteri della tabella.

public class TableSubstitutionRule : FontSubstitutionRule

Proprietà

Nome Descrizione
virtual Enabled { get; set; } Specifica se la regola è abilitata o meno.

Metodi

Nome Descrizione
AddSubstitutes(string, params string[]) Aggiunge i nomi dei font sostitutivi per il nome del font originale specificato.
GetSubstitutes(string) Restituisce l’array contenente i nomi dei font sostitutivi per il nome del font originale specificato.
Load(Stream) Carica le impostazioni di sostituzione della tabella dal flusso XML.
Load(string) Carica le impostazioni di sostituzione della tabella dal file XML.
LoadAndroidSettings() Carica le impostazioni di sostituzione delle tabelle predefinite per la piattaforma Linux.
LoadLinuxSettings() Carica le impostazioni di sostituzione delle tabelle predefinite per la piattaforma Linux.
LoadWindowsSettings() Carica le impostazioni di sostituzione delle tabelle predefinite per la piattaforma Windows.
Save(Stream) Salva le impostazioni di sostituzione della tabella correnti nello stream.
Save(string) Salva le impostazioni di sostituzione della tabella correnti su file.
SetSubstitutes(string, params string[]) Sostituisci i nomi dei font sostitutivi per il nome del font originale specificato.

Osservazioni

Questa regola definisce l’elenco dei nomi dei font sostitutivi da utilizzare se il font originale non è disponibile. I sostituti verranno controllati per il nome del font e ilAltName (se presente).

Esempi

Mostra come accedere alle tabelle di sostituzione dei caratteri per Windows e Linux.

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

// Crea una nuova regola di sostituzione delle tabelle e carica la tabella di sostituzione dei caratteri predefinita di Microsoft Windows.
TableSubstitutionRule tableSubstitutionRule = fontSettings.SubstitutionSettings.TableSubstitution;
tableSubstitutionRule.LoadWindowsSettings();

// In Windows, il sostituto predefinito del carattere "Times New Roman CE" è "Times New Roman".
Assert.AreEqual(new[] {"Times New Roman"},
    tableSubstitutionRule.GetSubstitutes("Times New Roman CE").ToArray());

// Possiamo salvare la tabella sotto forma di documento XML.
tableSubstitutionRule.Save(ArtifactsDir + "FontSettings.TableSubstitutionRule.Windows.xml");

// Linux ha la sua tabella di sostituzione.
// Ci sono più font sostitutivi per "Times New Roman CE".
// Se anche il primo sostituto, "FreeSerif", non è disponibile,
// questa regola scorrerà le altre nell'array finché non ne troverà una disponibile.
tableSubstitutionRule.LoadLinuxSettings();
Assert.AreEqual(new[] {"FreeSerif", "Liberation Serif", "DejaVu Serif"},
    tableSubstitutionRule.GetSubstitutes("Times New Roman CE").ToArray());

// Salva la tabella di sostituzione di Linux sotto forma di documento XML utilizzando uno stream.
using (FileStream fileStream = new FileStream(ArtifactsDir + "FontSettings.TableSubstitutionRule.Linux.xml",
    FileMode.Create))
{
    tableSubstitutionRule.Save(fileStream);
}

Guarda anche