Clases de fuentes para formatos de fuentes admitidos | .NET

Jerarquía de clases de Aspose.Font

La jerarquía de clases Aspose.Font para admitir fuentes de diferentes formatos es bastante simple.

La clase Font es una clase base única y cualquier clase que admita algún formato de fuente heredado de Font. Hay información común para fuentes de todos los formatos recopilados en esta clase. Esta información incluye datos como estilo de fuente, nombre de fuente, nombre de fuente postscript, familia de fuentes, métricas de fuente, número de glifos de la fuente, codificación, etc.

La clase Font es una clase abstracta, por lo que la instancia del objeto de tipo Aspose.Font.Font no se puede crear directamente.

La referencia al objeto recién creado es devuelta por los métodos estáticos de esta clase que son responsables de la carga de la fuente, familia de métodos sobrecargados Open().

En cuanto a la información específica de uno u otro formato de fuente, los responsables de proporcionar dicha información son los objetos heredados de la base Aspose.Font.Font. El único dato, específico para el formato de fuente, que incluye la clase base Font, es el valor de la enumeración FontType.

Las siguientes clases se heredan de Aspose.Font y se utilizan para trabajar con un formato de fuente específico: TtfFont, Type1Font, CffFont.

Interrelaciones entre el formato de fuente, el valor FontType y el tipo de objeto Aspose.Font

La siguiente tabla muestra la conformidad entre los formatos admitidos por Aspose.Font, los valores correspondientes a estos formatos de la enumeración FontType y las clases utilizadas para manipular cada uno de estos formatos.

Formato de fuenteValor de tipo de fuenteTipo de objeto Aspose.Font
TrueTypeTTFTtfFont
Type 1Type 1Type1Font
Compact Font Format (CFF)CFFCffFont

Interrelaciones entre el formato de archivo de fuente, el valor FontType y el tipo de objeto Aspose.Font

Los formatos de las fuentes antes mencionadas de la enumeración FontType son términos más amplios que los formatos de archivo para esas fuentes.

Por ejemplo, el formato TrueType cubre los siguientes formatos de archivo disponibles para cargar con Aspose.Font: ttf, ttc, eot, woff, woff2. Entonces, la característica común de las fuentes con extensiones .ttf, .ttc, .eot, .woff, .woff2 es que todas están relacionadas con la familia de fuentes TrueType.

Es por eso que, si reemplazamos en la tabla la columna “Formato de fuente” por la columna “Formato de archivo de fuente”, obtendremos la siguiente tabla de relaciones entre formatos de archivos de fuente, ajustándose a ellos los valores de FontType, y objetos destinados a trabajar con el formato de fuente correspondiente en Aspose.Font.

Formato de archivo de fuenteValor FontTypeTipo de objeto Aspose.Font
ttf, ttc, eot, woff, woff2TTFTtfFont
pfa, pfbType 1Type1Font
afm, pfmType 1Type1MetricFont
binary data of Compact Font Format typeCFFCffFont

Funcionalidad de la clase Aspose.Font.Font

La funcionalidad está definida por la clase Font y se puede dividir en varias áreas.

Funcionalidad definida por interfaces que implementa la clase Font

La interfaz más importante de la lista de interfaces de fuentes es la interfaz IFont. Proporciona propiedades para las interfaces IGlyphAccessor y IFontSaver, que son implementadas por la clase Font, por lo que toda la funcionalidad, definida por las interfaces que implementa la clase Font está cubierta por esto IFont interfaz.

La interfaz IFont define propiedades que son comunes para todos los formatos de fuente admitidos por Aspose.Font. A continuación se muestran las descripciones de cada propiedad.

Propiedades para manipular formatos de fuente.

Además, la interfaz IFont define el método Convert(), que se utiliza para convertir la fuente a otro formato. Por el momento hay conversiones disponibles de cualquier formato compatible con Aspose.Font para leer al formato TTF. Formatos de fuente admitidos se representan en la tabla.

Ver Convertidor de fuentes para obtener información adicional sobre cómo convertir fuentes con Aspose.Font.

Carga de fuentes

La funcionalidad de carga de fuentes no está cubierta por las interfaces implementadas y esta funcionalidad está representada por la familia de métodos estáticos Open(). Los parámetros para pasar a estos métodos se describen en el artículo ¿Cómo cargar fuentes?.

Guardar fuente

La clase Font implementa la interfaz IFontSaver, que declara funcionalidad para operaciones de guardado de fuentes. Para guardar una fuente, utilice uno de los métodos sobrecargados Save() y pase el nombre del archivo de fuente o la secuencia donde escribir la fuente.

En algunos casos es necesario guardar una fuente en otro formato. Por ejemplo, muchas páginas web prefieren trabajar con fuentes en formato “WOFF” y si desea colocar su fuente en dicha página, tendrá que guardarla en formato “WOFF”. El método SaveToFormat() fue diseñado para tales casos.

Clases heredadas de la clase base Aspose.Font.Font

Clases CffFont y Type1Font

Estas clases se utilizan para trabajar con fuentes de formato de fuente “Compact Font Format” y Adobe “Type 1”, respectivamente. Estas clases anulan ciertas propiedades y métodos de la clase Font, adaptándolos al formato de fuente real.

Clase TtfFont

Esta clase está diseñada para admitir fuentes de formato “TrueType”. Se puede obtener una referencia a un objeto de este tipo llamando al método estático Font.Open(), pasando TTF, como valor para la enumeración FontType. El método Font.Open() devuelve una referencia en el tipo base Font, por lo que la referencia obtenida debe convertirse al tipo de objeto TtfFont.

Como se sabe por la especificación del formato “TrueType”, los datos de la fuente se representan en diferentes tablas. Por el momento, la biblioteca Aspose.Font admite las siguientes tablas: head, cmap, glyf, loca, hhea, hmtx, maxp, OS/2, name, post, kern, cvt, fpgm, preparación. *Está previsto implementar la compatibilidad con otras tablas especificadas por el estándar “TrueType” en un futuro próximo.

Soporte para tablas TrueType en Aspose.Font implementadas por clases del espacio de nombres Aspose.Font.TtfTables. Cada clase que admite alguna tabla tiene un nombre relacionado con el nombre de la tabla correspondiente. La denominación de la clase se cumple según la siguiente regla: el nombre de cada clase tiene el prefijo Ttf, este prefijo va seguido del nombre de la tabla y luego la palabra “Tabla” termina el nombre de la clase.

Por ejemplo, la tabla head está soportada por la clase TtfHeadTable, la tabla hhea está soportada por la clase TtfHheaTable, y así sucesivamente.

Las referencias a todas las clases que admiten tablas TrueType son recopiladas por el objeto de tipo TtfTableRepository.

La clase TtfFont proporciona la referencia al objeto TtfTableRepository como propiedad TtfTables, por lo que es posible obtener acceso a cualquier tabla TrueType usando la sintaxis font.TtfTables, donde font es la referencia del tipo TtfFont.

La compatibilidad con las funciones de fuente OpenType está representada por la propiedad CffFont. Esta propiedad devuelve la referencia al objeto Font, cargado desde la tabla CFF, que contiene una representación de fuente en formato de fuente compacta.

Propiedad IsSymbolic utilizada para detectar si la fuente es simbólica: fuente especializada, es decir, compuesta de caracteres no alfabéticos, gráficos o ambos.

Acceso a glifos de fuentes

La clase TtfFont proporciona una funcionalidad ampliada para acceder a los glifos de fuentes. Además de los métodos, definidos por la interfaz IGlyphAccessor,
TtfFont proporciona dos métodos sobrecargados con el nombre GetGlyphById(), que requieren identificadores de glifos en forma de número entero o cadena.

Usar estos métodos funciona más rápido que usar el método GetGlyphById() de la interfaz IGlyphAccessor. Además, la clase TtfFont proporciona un conjunto de métodos sobrecargados GetGlyphComponentsById(). Estos métodos están diseñados para trabajar con glifos compuestos.

Glifo compuesto es un glifo que hace referencia a uno o más glifos en la fuente. Por ejemplo, el glifo del carácter Ä (Unicode U+00C4) puede estar compuesto por el glifo del carácter A (como glifo base) y el glifo de marca de diéresis.

Los métodos GetGlyphComponentsById() toman el identificador del glifo compuesto y devuelven la lista de glifos a los que hace referencia el glifo compuesto transferido.

Have any questions about Aspose.Font?



Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.