FontInfoCollection

FontInfoCollection class

Rappresenta una raccolta di caratteri utilizzati in un documento.

public class FontInfoCollection : IEnumerable<FontInfo>

Proprietà

Nome Descrizione
Count { get; } Ottiene il numero di elementi contenuti nella raccolta.
EmbedSystemFonts { get; set; } Specifica se incorporare o meno i caratteri di sistema nel documento. Il valore predefinito per questa proprietà è falso.
EmbedTrueTypeFonts { get; set; } Specifica se incorporare o meno i caratteri TrueType in un documento quando viene salvato. Il valore predefinito per questa proprietà è falso .
Item { get; } Ottiene un font con il nome specificato. (2 indexers)
SaveSubsetFonts { get; set; } Specifica se salvare o meno un sottoinsieme dei caratteri TrueType incorporati con il documento. Il valore predefinito per questa proprietà è falso.

Metodi

Nome Descrizione
Contains(string) Determina se la raccolta contiene un font con il nome specificato.
GetEnumerator() Restituisce un oggetto enumeratore che può essere utilizzato per scorrere tutti gli elementi della raccolta.

Osservazioni

Gli articoli sonoFontInfo oggetti.

Non crei direttamente istanze di questa classe. Usa ilFontInfos per accedere alla raccolta di font definiti nel documento.

Esempi

Mostra come stampare i dettagli di quali font sono presenti in un documento.

Document doc = new Document(MyDir + "Embedded font.docx");

FontInfoCollection allFonts = doc.FontInfos;
// Stampa tutti i caratteri usati e non utilizzati nel documento.
for (int i = 0; i < allFonts.Count; i++)
{
    Console.WriteLine($"Font index #{i}");
    Console.WriteLine($"\tName: {allFonts[i].Name}");
    Console.WriteLine($"\tIs {(allFonts[i].IsTrueType ? "" : "not ")}a trueType font");
}

Mostra come salvare un documento con i caratteri TrueType incorporati.

Document doc = new Document(MyDir + "Document.docx");

FontInfoCollection fontInfos = doc.FontInfos;
fontInfos.EmbedTrueTypeFonts = embedAllFonts;
fontInfos.EmbedSystemFonts = embedAllFonts;
fontInfos.SaveSubsetFonts = embedAllFonts;

doc.Save(ArtifactsDir + "Font.FontInfoCollection.docx");

if (embedAllFonts)
    Assert.That(25000, Is.LessThan(new FileInfo(ArtifactsDir + "Font.FontInfoCollection.docx").Length));
else
    Assert.That(15000, Is.AtLeast(new FileInfo(ArtifactsDir + "Font.FontInfoCollection.docx").Length));

Guarda anche