FontInfoCollection

FontInfoCollection class

Representa una colección de fuentes utilizadas en un documento.

public class FontInfoCollection : IEnumerable<FontInfo>

Propiedades

Nombre Descripción
Count { get; } Obtiene el número de elementos que contiene la colección.
EmbedSystemFonts { get; set; } Especifica si se incrustan o no las fuentes del sistema en el documento. El valor predeterminado para esta propiedad es falso.
EmbedTrueTypeFonts { get; set; } Especifica si se incrustan o no fuentes TrueType en un documento cuando se guarda. El valor predeterminado para esta propiedad es falso .
Item { get; } Obtiene una fuente con el nombre especificado. (2 indexers)
SaveSubsetFonts { get; set; } Especifica si guardar o no un subconjunto de las fuentes TrueType incrustadas con el documento. El valor predeterminado para esta propiedad es falso.

Métodos

Nombre Descripción
Contains(string) Determina si la colección contiene una fuente con el nombre dado.
GetEnumerator() Devuelve un objeto enumerador que se puede usar para iterar sobre todos los elementos de la colección.

Observaciones

Los artículos sonFontInfo objetos.

No crea instancias de esta clase directamente. Usa elFontInfos propiedad para acceder a la colección de fuentes definidas en el documento.

Ejemplos

Muestra cómo imprimir los detalles de qué fuentes están presentes en un documento.

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

FontInfoCollection allFonts = doc.FontInfos;
// Imprime todas las fuentes usadas y no usadas en el 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");
}

Muestra cómo guardar un documento con fuentes TrueType incrustadas.

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));

Ver también