Características de las fuentes OpenType
En este tema se proporciona información general sobre algunas de las características clave de la tecnología de fuente OpenType en Windows Presentation Foundation (WPF).
Formato de fuente OpenType
El formato de fuente OpenType es una extensión del formato de fuente TrueType® que incorpora compatibilidad para los datos de fuentes PostScript. El formato de fuente OpenType ha sido desarrollado conjuntamente por Microsoft y Adobe Corporation. Las fuentes OpenType y los servicios del sistema operativo compatibles con las fuentes OpenType proporcionan una forma sencilla de instalar y usar fuentes, tanto si las fuentes contienen esquemas TrueType o CFF (PostScript).
El formato de fuente OpenType pone fin a los siguientes problemas de desarrollo:
Más compatibilidad con varias plataformas.
Más compatibilidad con juegos de caracteres internacionales.
Mejor protección para los datos de fuente.
Tamaños de archivo más pequeños para hacer más eficaz la distribución de la fuente.
Más compatibilidad con el control tipográfico avanzado.
Nota
Windows SDK contiene un conjunto de fuentes OpenType de ejemplo que se pueden usar con aplicaciones de Windows Presentation Foundation (WPF). Estas fuentes proporcionan la mayoría de las características ilustradas en el resto de este tema. Para obtener más información, vea Paquete de fuentes OpenType de ejemplo.
Para obtener información detallada sobre el formato de fuente OpenType, vea la Especificación OpenType.
Extensiones tipográficas avanzadas
Las tablas tipográficas avanzadas (tablas de diseño OpenType) amplían la funcionalidad de fuentes con esquemas TrueType o CFF. Las fuentes de diseño OpenType contienen información adicional que amplía las capacidades de las fuentes para admitir tipografía internacional de alta calidad. La mayoría de las fuentes OpenType exponen solo un subconjunto del total de características OpenType disponibles. Las fuentes OpenType proporcionan las siguientes características.
Asignación enriquecida entre caracteres y glifos que admiten ligaduras, formas posicionales, alternativas y otras sustituciones de fuentes.
Compatibilidad con datos adjuntos de glifo y posicionamiento en dos dimensiones.
Información explícita de script y lenguaje que contiene la fuente, para que una aplicación de procesamiento de textos pueda ajustar su comportamiento en consecuencia.
Las tablas de diseño OpenType se describen con más detalle en la sección de tablas de archivos de fuentes de la especificación OpenType.
En el resto de esta introducción se presenta la amplitud y la flexibilidad de algunas características de OpenType visualmente interesantes que se exponen mediante las propiedades del objeto Typography. Para obtener más información sobre este objeto, consulte Clase de tipografía.
Variantes
Las variantes se usan para representar varios estilos tipográficos, como superíndices y subíndices.
Superíndices y subíndices
La propiedad Variants permite establecer los valores de superíndice y subíndice de una fuente OpenType.
En el texto siguiente se muestran superíndices para la fuente Palatino Linotype.
En el ejemplo de marcado siguiente se muestra cómo definir superíndices de la fuente Palatino Linotype mediante las propiedades del objeto Typography.
<Paragraph FontFamily="Palatino Linotype">
2<Run Typography.Variants="Superscript">3</Run>
14<Run Typography.Variants="Superscript">th</Run>
</Paragraph>
En el texto siguiente se muestran subíndices de la fuente Palatino Linotype.
En el ejemplo de marcado siguiente se muestra cómo definir subíndices de la fuente Palatino Linotype mediante las propiedades del objeto Typography.
<Paragraph FontFamily="Palatino Linotype">
H<Run Typography.Variants="Subscript">2</Run>O
Footnote<Run Typography.Variants="Subscript">4</Run>
</Paragraph>
Usos decorativos de superíndices y subíndices
También puede usar superíndices y subíndices para crear efectos decorativos con texto en mayúsculas y minúsculas. En el texto siguiente se muestra texto con superíndices y subíndices para la fuente Palatino Linotype. Tenga en cuenta que las mayúsculas no se ven afectadas.
En el ejemplo de marcado siguiente se muestra cómo definir superíndices y subíndices de una fuente mediante las propiedades del objeto Typography.
<Paragraph FontFamily="Palatino Linotype" Typography.Variants="Superscript">
Chapter One
</Paragraph>
<Paragraph FontFamily="Palatino Linotype" Typography.Variants="Subscript">
Chapter One
</Paragraph>
Mayúsculas
Las mayúsculas son un conjunto de formatos tipográficos que representan el texto en glifos con estilo de mayúscula. Normalmente, cuando se representa todo un texto en mayúsculas, el espaciado entre las letras puede parecer demasiado estrecho y el espesor y la proporción de las letras, demasiado anchos. OpenType admite varios formatos de estilo de mayúsculas, incluido versales, mayúsculas pequeñas, títulos y espaciado de mayúsculas. Estos formatos de estilo le permiten controlar el aspecto de las mayúsculas.
En el texto siguiente se muestran letras en mayúsculas estándar para la fuente Pescadero, seguidas de letras con estilo "SmallCaps" y "AllSmallCaps". En este caso, se usa el mismo tamaño de fuente en las tres palabras.
En el ejemplo de marcado siguiente se muestra cómo definir las mayúsculas de la fuente Pescadero mediante las propiedades del objeto Typography. Cuando se usa el formato "SmallCaps", se omite cualquier letra mayúscula inicial.
<Paragraph FontFamily="Pescadero" FontSize="48">
<Run>CAPITALS</Run>
<Run Typography.Capitals="SmallCaps">Capitals</Run>
<Run Typography.Capitals="AllSmallCaps">Capitals</Run>
</Paragraph>
Mayúsculas de título
Las mayúsculas de título son más estrechas en espesor y proporción y están diseñadas para dar un aspecto más elegante que las mayúsculas corrientes. Normalmente, las mayúsculas de título se usan en tamaños de fuente mayores como títulos. En el texto siguiente se muestran mayúsculas normales y de título de la fuente Pescadero. Fíjese en que el grosor del texto es más fino en la segunda línea.
En el ejemplo de marcado siguiente se muestra cómo definir las mayúsculas de título de la fuente Pescadero mediante las propiedades del objeto Typography.
<Paragraph FontFamily="Pescadero">
<Run Typography.Capitals="Titling">chapter one</Run>
</Paragraph>
Espaciado de mayúsculas
El espaciado de mayúsculas es una característica que le permite proporcionar más espacio al usar las mayúsculas en un texto. Normalmente, las letras mayúsculas están diseñadas para combinarse con letras minúsculas. Un espaciado que parece bonito entre y una letra mayúscula y una letra minúscula puede parecer demasiado abigarrado si se usan todas las letras mayúsculas. En el texto siguiente se muestra un espaciado normal y de mayúsculas de la fuente Pescadero.
En el ejemplo de marcado siguiente se muestra cómo definir el espaciado de mayúsculas de la fuente Pescadero mediante las propiedades del objeto Typography.
<Paragraph FontFamily="Pescadero">
<Run Typography.CapitalSpacing="True">CHAPTER ONE</Run>
</Paragraph>
Ligaduras
Las ligaduras son dos o más glifos que se unen en un solo glifo para crear texto más legible o atractivo. Las fuentes OpenType admiten cuatro tipos de ligaduras:
Ligaduras estándar. Diseñadas para mejorar la legibilidad. Las ligaduras estándar incluyen "fi", "fl" y "ff".
Ligaduras contextuales. Diseñadas para mejorar la legibilidad al proporcionar un comportamiento de unión mejor entre los caracteres que constituyen la ligadura.
Ligaduras discrecionales. Diseñadas para ser ornamentales y no específicamente para la legibilidad.
Ligaduras históricas. Diseñadas para ser históricas y no específicamente para la legibilidad.
En el texto siguiente se muestran glifos de ligadura estándar para la fuente Pericles.
En el ejemplo de marcado siguiente se muestra cómo definir glifos de ligadura estándar de la fuente Pericles mediante las propiedades del objeto Typography.
<Paragraph FontFamily="Pericles" Typography.StandardLigatures="True">
<Run Typography.StylisticAlternates="1">FI</Run>
<Run Typography.StylisticAlternates="1">FL</Run>
<Run Typography.StylisticAlternates="1">TH</Run>
<Run Typography.StylisticAlternates="1">TT</Run>
<Run Typography.StylisticAlternates="1">TV</Run>
<Run Typography.StylisticAlternates="1">TW</Run>
<Run Typography.StylisticAlternates="1">TY</Run>
<Run Typography.StylisticAlternates="1">VT</Run>
<Run Typography.StylisticAlternates="1">WT</Run>
<Run Typography.StylisticAlternates="1">YT</Run>
</Paragraph>
En el texto siguiente se muestran los glifos de ligadura discrecional para la fuente Pericles.
En el ejemplo de marcado siguiente se muestra cómo definir glifos de ligadura discrecional de la fuente Pericles mediante las propiedades del objeto Typography.
<Paragraph FontFamily="Pericles" Typography.DiscretionaryLigatures="True">
<Run Typography.StylisticAlternates="1">CO</Run>
<Run Typography.StylisticAlternates="1">LA</Run>
<Run Typography.StylisticAlternates="1">LE</Run>
<Run Typography.StylisticAlternates="1">LI</Run>
<Run Typography.StylisticAlternates="1">LL</Run>
<Run Typography.StylisticAlternates="1">LO</Run>
<Run Typography.StylisticAlternates="1">LU</Run>
</Paragraph>
Las fuentes OpenType en Windows Presentation Foundation (WPF) permiten las ligaduras estándar de forma predeterminada. Por ejemplo, si usa la fuente Palatino Linotype, las ligaduras estándar "fi", "ff" y "fl" aparecen como un glifo de caracteres combinados. Observe que el par de caracteres de cada ligadura estándar se tocan entre sí.
Sin embargo, puede deshabilitar las características de ligadura estándar para que una ligadura estándar, como "ff", se muestre como dos glifos independientes, en lugar de un glifo de caracteres combinados.
En el ejemplo de marcado siguiente se muestra cómo deshabilitar glifos de ligadura estándar de la fuente Palatino Linotype mediante las propiedades del objeto Typography.
<!-- Set standard ligatures to false in order to disable feature. -->
<Paragraph Typography.StandardLigatures="False" FontFamily="Palatino Linotype" FontSize="72">
fi ff fl
</Paragraph>
Caracteres floreados
Los caracteres floreados son glifos decorativos que usan adornos elaborados que suelen asociarse a la caligrafía. En el texto siguiente se muestran glifos estándar y de caracteres floreados de la fuente Pescadero.
Los caracteres floreados se usan a menudo como elementos decorativos en frases cortas, como anuncios de eventos. En el texto siguiente se usan caracteres floreados para resaltar las letras mayúsculas del nombre del evento.
En el ejemplo de marcado siguiente se muestra cómo definir caracteres de floreado de una fuente mediante las propiedades del objeto Typography.
<Paragraph FontFamily="Pescadero" TextBlock.TextAlignment="Center">
Wishing you a<LineBreak/>
<Run Typography.StandardSwashes="1" FontSize="36">Happy New Year!</Run>
</Paragraph>
Caracteres floreados contextuales
Algunas combinaciones de glifos floreados pueden producir un aspecto poco atractivo, como trazos superpuestos descendentes en letras adyacentes. El uso de un carácter floreado contextual le permite usar un glifo de carácter floreado sustituto que produce una mejor apariencia. En el texto siguiente se muestra la misma palabra antes y después de aplicar un carácter floreado contextual.
En el ejemplo de marcado siguiente se muestra cómo definir un carácter floreado contextual de la fuente Pescadero mediante las propiedades del objeto Typography.
<Paragraph FontFamily="Pescadero" Typography.StandardSwashes="1">
Lyon <Run Typography.ContextualSwashes="1">L</Run>yon
</Paragraph>
Alternativas
Las alternativas son glifos que se pueden sustituir por un glifo estándar. Las fuentes OpenType, como la fuente Pericles usada en los ejemplos siguientes, pueden contener glifos alternativos que se puede usar para crear diferentes aspectos de texto. En el texto siguiente se muestran glifos estándar para la fuente Pericles.
La fuente OpenType Pericles contiene glifos adicionales que proporcionan alternativas estilísticas al conjunto estándar de glifos. En el texto siguiente se muestran glifos alternativos de estilo.
En el ejemplo de marcado siguiente se muestra cómo definir glifos alternativos de estilo de la fuente Pericles mediante las propiedades del objeto Typography.
<Paragraph FontFamily="Pericles">
<Run Typography.StylisticAlternates="1">A</Run>NCIENT
GR<Run Typography.StylisticAlternates="1">EE</Run>K
MYTH<Run Typography.StylisticAlternates="1">O</Run>LOGY
</Paragraph>
En el texto siguiente se muestran algunos otros glifos alternativos de estilo de la fuente Pericles.
En el ejemplo de marcación siguiente se muestra cómo se definen estos otros glifos alternativos de estilo.
<Paragraph FontFamily="Pericles">
<Run Typography.StylisticAlternates="1">A</Run>
<Run Typography.StylisticAlternates="2">A</Run>
<Run Typography.StylisticAlternates="3">A</Run>
<Run Typography.StylisticAlternates="1">C</Run>
<Run Typography.StylisticAlternates="1">E</Run>
<Run Typography.StylisticAlternates="1">G</Run>
<Run Typography.StylisticAlternates="1">O</Run>
<Run Typography.StylisticAlternates="1">Q</Run>
<Run Typography.StylisticAlternates="1">R</Run>
<Run Typography.StylisticAlternates="2">R</Run>
<Run Typography.StylisticAlternates="1">S</Run>
<Run Typography.StylisticAlternates="1">Y</Run>
</Paragraph>
Alternativas contextuales aleatorias
Las alternativas contextuales aleatorias proporcionan varios glifos sustitutos para un único carácter. Cuando se implementa con fuentes de tipo script, esta característica puede simular la escritura a mano mediante un conjunto de glifos elegidos aleatoriamente con ligeras diferencias de apariencia. En el texto siguiente se usan alternativas contextuales aleatorias de la fuente Lindsey. Fíjese en que la apariencia de la letra "a" varía ligeramente
En el ejemplo de marcado siguiente se muestra cómo definir alternativas contextuales aleatorias de la fuente Lindsey mediante las propiedades del objeto Typography.
<TextBlock FontFamily="Lindsey">
<Run Typography.ContextualAlternates="True">
a banana in a cabana
</Run>
</TextBlock>
Formas históricas
Las formas históricas son convenciones tipográficas usadas comúnmente en el pasado. En el texto siguiente se muestra la frase "Boston, Massachusetts" utilizando una forma histórica de los glifos de la fuente Palatino Linotype.
En el ejemplo de marcado siguiente se muestra cómo definir formas históricas de la fuente Palatino Linotype mediante las propiedades del objeto Typography.
<Paragraph FontFamily="Palatino Linotype">
<Run Typography.HistoricalForms="True">Boston, Massachusetts</Run>
</Paragraph>
Estilos numéricos
Las fuentes OpenType admiten un gran número de características que se pueden usar con valores numéricos en texto.
Fracciones
Las fuentes OpenType admiten estilos de fracciones, ya sean verticales o con barra diagonal.
En el texto siguiente se muestran estilos de fracciones para la fuente Palatino Linotype.
En el ejemplo de marcado siguiente se muestra cómo definir estilos de fracciones de la fuente Palatino Linotype mediante las propiedades del objeto Typography.
<Paragraph FontFamily="Palatino Linotype" Typography.Fraction="Slashed">
1/8 1/4 3/8 1/2 5/8 3/4 7/8
</Paragraph>
<Paragraph FontFamily="Palatino Linotype" Typography.Fraction="Stacked">
1/8 1/4 3/8 1/2 5/8 3/4 7/8
</Paragraph>
Números de estilo antiguo
Las fuentes OpenType admiten un formato de números de estilo antiguo. Este formato es útil para mostrar números en estilos que ya no son estándar. En el texto siguiente se muestra una fecha del siglo XVIII en los formatos de números de estilo estándar y antiguo de la fuente Palatino Linotype.
En el texto siguiente se muestran números estándar para la fuente Palatino Linotype, seguidos de números de estilo antiguo.
En el ejemplo de marcado siguiente se muestra cómo definir números de estilo de la fuente Palatino Linotype mediante las propiedades del objeto Typography.
<Paragraph FontFamily="Palatino Linotype">
<Run Typography.NumeralStyle="Normal">1234567890</Run>
<Run Typography.NumeralStyle="OldStyle">1234567890</Run>
</Paragraph>
Cifras proporcionales y tabulares
Las fuentes OpenType admiten una característica de cifra proporcional y tabular para controlar la alineación de ancho al usar números. Las cifras proporcionales tratan los números como si tuvieran un ancho diferente: "1" es más estrecho que "5". Las cifras tabulares se consideran números con el mismo ancho para que se alineen verticalmente, lo que aumenta la legibilidad de la información de tipo financiero.
En el texto siguiente se muestran dos cifras proporcionales en la primera columna con la fuente Miramonte. Observe la diferencia de ancho entre los números "5" y "1". La segunda columna muestra los dos mismos valores numéricos, pero con el ancho ajustado mediante la característica de cifra tabular.
En el ejemplo de marcado siguiente se muestra cómo definir cifras proporcionales y tabulares de la fuente Miramonte mediante las propiedades del objeto Typography.
<TextBlock FontFamily="Miramonte">
<Run Typography.NumeralAlignment="Proportional">114,131</Run>
</TextBlock>
<TextBlock FontFamily="Miramonte">
<Run Typography.NumeralAlignment="Tabular">114,131</Run>
</TextBlock>
Cero con barra diagonal
Las fuentes OpenType admiten un formato numérico de cero con barra diagonal para resaltar la diferencia entre la letra "O" y el número "0". El número cero con barra diagonal se usa a menudo para identificadores en información financiera y comercial.
En el texto siguiente se muestra un identificador de pedido de ejemplo con la fuente Miramonte. En la primera línea se usan números estándar. En la segunda línea se han usado ceros con barra diagonal para proporcionar un mejor contraste con la letra "O" mayúscula.
En el ejemplo de marcado siguiente se muestra cómo definir ceros con barras diagonales de la fuente Miramonte mediante las propiedades del objeto Typography.
<Paragraph FontFamily="Miramonte">
<Run>Order #0048-OTC-390</Run>
<LineBreak/>
<Run Typography.SlashedZero="True">Order #0048-OTC-390</Run>
</Paragraph>
Clase de tipografía
El objeto Typography expone el conjunto de características que una fuente OpenType admite. Al establecer las propiedades del objeto Typography en el marcado, se pueden crear fácilmente documentos que saquen partido de las características OpenType.
En el texto siguiente se muestran letras en mayúsculas estándar para la fuente Pescadero, seguidas de letras con estilo "SmallCaps" y "AllSmallCaps". En este caso, se usa el mismo tamaño de fuente en las tres palabras.
En el ejemplo de marcado siguiente se muestra cómo definir las mayúsculas de la fuente Pescadero mediante las propiedades del objeto Typography. Cuando se usa el formato "SmallCaps", se omite cualquier letra mayúscula inicial.
<Paragraph FontFamily="Pescadero" FontSize="48">
<Run>CAPITALS</Run>
<Run Typography.Capitals="SmallCaps">Capitals</Run>
<Run Typography.Capitals="AllSmallCaps">Capitals</Run>
</Paragraph>
En el ejemplo de código siguiente se realiza la misma tarea que en el ejemplo anterior de marcación.
MyParagraph.FontFamily = new FontFamily("Pescadero");
MyParagraph.FontSize = 48;
Run run_1 = new Run("CAPITALS ");
MyParagraph.Inlines.Add(run_1);
Run run_2 = new Run("Capitals ");
run_2.Typography.Capitals = FontCapitals.SmallCaps;
MyParagraph.Inlines.Add(run_2);
Run run_3 = new Run("Capitals");
run_3.Typography.Capitals = FontCapitals.AllSmallCaps;
MyParagraph.Inlines.Add(run_3);
MyParagraph.Inlines.Add(new LineBreak());
MyParagraph.FontFamily = New FontFamily("Pescadero")
MyParagraph.FontSize = 48
Dim run_1 As New Run("CAPITALS ")
MyParagraph.Inlines.Add(run_1)
Dim run_2 As New Run("Capitals ")
run_2.Typography.Capitals = FontCapitals.SmallCaps
MyParagraph.Inlines.Add(run_2)
Dim run_3 As New Run("Capitals")
run_3.Typography.Capitals = FontCapitals.AllSmallCaps
MyParagraph.Inlines.Add(run_3)
MyParagraph.Inlines.Add(New LineBreak())
Propiedades de la clase de tipografía
En la tabla siguiente se muestran las propiedades, los valores y la configuración predeterminados del objeto Typography.
Consulte también
.NET Desktop feedback
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de