Las características tipográficas que se hicieron posibles mediante el uso de sistemas tipográficos digitales han resuelto muchas de las demandas impuestas a los sistemas informáticos de replicar la tipografía tradicional y han ampliado las posibilidades con muchas características nuevas. Tres sistemas son de uso común: OpenType , ideado por Microsoft y Adobe , de Apple 's de Apple Tipografía Avanzada (AAT) y SIL ' s grafito . Las listas siguientes proporcionan información sobre las funciones OpenType y AAT. Graphite no tiene un conjunto fijo de características; en su lugar, proporciona una forma para que las fuentes definan sus propias características.
El formato OpenType define una serie de características tipográficas que puede admitir una fuente en particular. Algunos programas, como Adobe InDesign o versiones recientes de Lua / XeTeX , brindan a los usuarios el control de estas funciones, por ejemplo, para habilitar letras mayúsculas estilísticas elegantes (mayúsculas) o para elegir entre rango (altura completa) y (estilo, o en minúsculas) dígitos. Algunos navegadores web también admiten funciones OpenType de acuerdo con la especificación CSS Fonts Module Level 3, que permite que las funciones OpenType se establezcan directamente a través de la font-feature-settings
propiedad o indirectamente mediante mecanismos de nivel superior.
Las siguientes tablas enumeran las características definidas en la versión 1.8.1 de la especificación OpenType. Los códigos de la columna "tipo" se explican después de las tablas. Las características de OpenType pueden ser aplicables solo a ciertos scripts de idioma o idiomas específicos, o en ciertos modos de escritura. Las características se dividen en varias tablas en consecuencia.
Funciones destinadas principalmente o requeridas exclusivamente por los alfasilabarios del sur de Asia (índico / brahmico)
Nombre largo | etiqueta | tipo | Descripción |
---|
Formularios por encima de la base | abvf | S1 | Reemplaza la parte superior de la base de un signo de vocal. Para guiones jemer y similares. |
Posicionamiento de la marca por encima de la base | abvm | P4,5 | Coloca un glifo de marca sobre un glifo base. |
Sustituciones por encima de la base | abvs | S4 | Liga una consonante con una marca superior. |
Formularios por debajo de la base | blwf | S4 | Reemplaza la combinación halant + consonante con una forma de subíndice. |
Posicionamiento de la marca debajo de la base | blwm | P4,5 | Coloca un glifo de marca debajo de un glifo base |
Sustituciones por debajo de la base | blws | S4 | Liga una consonante con una marca inferior. |
Formularios pre-base | pref | S4 | Reemplaza halant + consonante al final de un grupo de consonantes con un glifo al principio. Khmer, Myanmar, malayalam, telugu |
Sustituciones previas a la base | pres | S4,5 | Liga combinaciones de consonantes. |
Sustituciones posteriores a la base | psts | S4 | Liga una consonante final + consonante. |
Formularios post-base | pstf | S4 | Sustituye halant final + consonante con forma especial. Khmer y Gurmukhi, malayalam |
Distancia | dist | P2 | Ajusta la posición horizontal entre glifos. (Siempre habilitado, a diferencia de 'kern'). |
Akhand | akhn | S4 | Hindi para irrompible . Liga consonante + halant + consonante, generalmente solo para combinaciones k-ss y j-ny. |
Formas Halant | haln | S4 | Reemplaza un glifo por consonante final + halant . |
Forma media | half | S4 | Reemplaza consonante + halant con una forma media, lo que indica que es parte de una conjunción. |
Formas de Nukta | nukt | S4 | Reemplace consonante + nukta (marca de punto) con un solo glifo. |
Formas Rakar | rkrf | S4 | Reemplaza halant + ra con un glifo rakar , lo que indica que es parte de una conjunción. |
Formulario Reph | rphf | S4 | Reemplaza ra + halant inicial con una marca de referencia final , que indica parte de una conjunción. |
Variantes de Vattu | vatu | S4 | Reemplaza las combinaciones de consonante + rakar con una ligadura variante vattu . |
Formas conjuntas | cjct | S4 | Liga consonante + halant + consonante, indica parte de una conjunción. |
Forma de conjunción después de Ro | cfar | S1 | Jemer |
Funciones destinadas principalmente o requeridas exclusivamente por tetragramas de Asia oriental (chino, japonés, coreano)
Nombre largo | etiqueta | tipo | Descripción |
---|
Formas simplificadas | smpl | S1 | Reemplaza los sinogramas con sus versiones simplificadas , puede depender del idioma |
Formas tradicionales | trad | S1,3 | Reemplaza los caracteres chinos con sus versiones tradicionales. |
Formas de nombres tradicionales | tnam | S1 | Suplentes japoneses para nombres propios |
Formularios de expertos | expt | S1 | Alternativas tipográficas para algunos tetragramas japoneses |
Formas Hojo Kanji | hojo | | Hojo alterna para tetragramas japoneses |
Formas kanji de NLC | nlck | | NLC suplentes para tetragramas japoneses |
Formularios JIS 78 | jp78 | S1,3 | JIS C 6226-1978 alternativas para tetragramas japoneses, no accesible por Unicode |
Formularios JIS 83 | jp83 | S1 | JIS X 0208-1983 se alterna para tetragramas japoneses, no accesible por Unicode |
Formularios JIS 90 | jp90 | S1 | JIS X 0208-1990 se alterna para tetragramas japoneses, no accesible por Unicode |
Formularios JIS 04 | jp04 | | Alternativas de JIS 2004 para tetragramas japoneses, no accesible por Unicode |
Hangul | hngl | S1,3 | Translitera caracteres de estilo chino con Hangul coreano |
Formularios principales de Jamo | ljmo | S4 | Grupo inicial de consonantes para un tetragrama Hangul coreano sintetizado |
Formularios de Jamo finales | tjmo | S4 | Grupo final de consonantes para un tetragrama Hangul coreano sintetizado |
Formas de Vocal Jamo | vjmo | S4 | Grupo medial de vocales para un tetragrama Hangul coreano sintetizado |
Anchos completos | fwid | S1 | Sustituye caracteres espaciados proporcionalmente con versiones de ancho completo (especialmente para letras latinas en chino) |
Medias anchuras | hwid | S1, P1 | Sustituye caracteres espaciados uniformemente con la versión de ancho medio |
Medias anchuras alternativas | halt | P1 | Reubica glifos de ancho completo en espacios de medio ancho |
Terceros anchos | twid | S1, P1 | Sustituye caracteres espaciados uniformemente con una versión de 1/3 de ancho (puntuación, etc.) |
Anchos de un cuarto | qwid | S1 | Reemplaza glifos espaciados uniformemente por glifos de un cuarto de ancho (puntuación, etc.) |
Anchos proporcionales | pwid | S1 | Reemplaza glifos uniformemente espaciados por proporcionales |
Suplentes proporcionales | palt | P1 | Reubica los caracteres de otro modo monoespaciados de acuerdo con el ancho del glifo |
Kana proporcional | pkna | S1 | Kana para usar junto con alfabetos, sin tipografía de cuadrícula |
Formas de notación rubí | ruby | S1 | Ruby characters , letra pequeña |
Alternativas horizontales de kana | hkna | S1 | Formas alternativas para el texto kana horizontal , por ejemplo, ー para chōonpu en lugar de |, cf.vkna |
Kana vertical | vkna | S1 | Formas kana japonesas alternativas para texto vertical, por ejemplo, | para chōonpu en lugar de ー, cf.hkna |
Puntuación CJK centrada | cpct | P1 | Coloca los signos de puntuación vertical y horizontalmente |
Funciones destinadas principalmente o requeridas exclusivamente por el oeste de Asia (semita, árabe) y otras escrituras o fuentes cursivas
Nombre largo | etiqueta | tipo | Descripción |
---|
Posicionamiento cursivo | curs | P3 | Posicionamiento preciso de la conexión de una letra a una adyacente |
Suplentes de justificación | jalt | S3 | Alternativas más anchas y más estrechas seleccionables por el usuario, utilizadas especialmente para justificar |
Posicionamiento de marcas mediante sustitución | mset | S5 | Utilizado en Windows 95 para el posicionamiento de marcas árabes |
Alternativas contextuales requeridas | rclt | S6 | Se requieren alternativas contextuales para la visualización correcta del texto que difiere de la combinación predeterminada para otras letras, requerida especialmente importante por el árabe |
Ligaduras requeridas | rlig | S3 | Ligaduras necesarias para la visualización correcta del texto (cualquier script, pero en cursiva) |
Formas aisladas | isol | S1 | Sustituye una forma especial de una letra que aparece fuera de una palabra (requerido por árabe y siríaco) |
Formularios iniciales | init | S1 | Sustituye una forma especial de una letra que aparece al principio de una palabra (requerido por árabe y siríaco) |
Formas mediales | medi | S1 | Sustituye una forma especial de letras entre otras letras en palabras (requerido por árabe y siríaco) |
Formulario medial n. ° 2 | med2 | S5 | Siríaco |
Formularios terminales | fina | S1 | Sustituye una forma especial de una letra al final de las palabras (requerido por árabe y siríaco) |
Formulario de terminal n. ° 2 | fin2 | S5 | Siríaco |
Formulario de terminal n. ° 3 | fin3 | S5 | Siríaco |
Glifo final en líneas alternativas | falt | S3 | Reemplaza el glifo final en la línea con un alternativo |
Descomposición de glifos de estiramiento | stch | S2 | Sustituye una forma especial de un glifo elástico en una o más letras (requerido por el siríaco) |
Funciones destinadas a alfabetos bicamerales [en mayúsculas] (latín, griego, cirílico, etc.)
Nombre largo | etiqueta | tipo | Descripción |
---|
Letras minúsculas | smcp | S1 | Sustituye letras minúsculas por versiones en minúscula |
Mayúsculas a Small Caps | c2sc | S1 | Sustituye mayúsculas por minúsculas |
Gorras pequeñas | pcap | S1 | Sustituir letras minúsculas con sus casquillos petite análogos |
Mayúsculas a Petite Caps | c2pc | S1 | Sustituye las letras mayúsculas con tapas de petite |
Unicase | unic | S1 | Reemplaza letras minúsculas y mayúsculas con un conjunto de glifos de una sola caja |
Espaciado de mayúsculas | cpsp | P1 | Ajusta el espaciado entre letras en el texto en mayúsculas |
Formas sensibles a mayúsculas y minúsculas | case | P1 | Reemplace los caracteres, especialmente la puntuación, con formas más adecuadas para el texto en mayúsculas, cf. titl |
Cursiva | ital | S1 | Reemplaza la letra con el glifo en cursiva correspondiente |
Ordinales | ordn | S6,4 | Reemplaza caracteres con formas ordinales para usar después de números. |
Funciones según la dirección de escritura
Nombre largo | etiqueta | tipo | Descripción |
---|
Métricas verticales alternativas | valt | P1 | Coloca caracteres más cortos para centrarlos verticalmente con caracteres de altura completa |
Métricas alternativas de la mitad vertical | vhal | P1 | Coloca los caracteres para centrarlos verticalmente con caracteres de media altura |
Métricas verticales alternativas proporcionales | vpal | P1 | Reubica los glifos verticalmente para centrarlos en caracteres proporcionales de altura completa |
Alternativas verticales | vert | S1 | Un subconjunto de vrt2 : prefiera la última característica |
Alternativas verticales y rotación | vrt2 | S1 | Reemplaza caracteres con formas adecuadas para escritura vertical, posiblemente girando 90 ° |
Alternativas verticales para rotación | vrtr | S1 | Reemplaza los caracteres con formas adecuadas para la escritura vertical, posiblemente cambiando o formando |
Kerning vertical | vkrn | P2,8 | Posicionamiento vertical fino de caracteres según la forma. |
Se alternan glifos de izquierda a derecha | ltra | S1 | Reemplaza los caracteres con formas adecuadas a la presentación de izquierda a derecha (excepto formas reflejadas) |
Formas reflejadas de izquierda a derecha | ltrm | S1 | Reemplaza los caracteres con formas posiblemente reflejadas acordes con la presentación de izquierda a derecha. |
Se alternan glifos de derecha a izquierda | rtla | S1 | Reemplaza los caracteres con formas adecuadas a la presentación de derecha a izquierda (excepto formas reflejadas) |
Formas reflejadas de derecha a izquierda | rtlm | S1 | Reemplaza caracteres con formas posiblemente reflejadas acordes a la presentación de derecha a izquierda |
Funciones pensadas para dígitos y matemáticas
Nombre largo | etiqueta | tipo | Descripción |
---|
Figuras de revestimiento | lnum | S1 | Reemplaza números con glifos destinados a encajar mejor en texto en mayúsculas, a menudo también tnum |
Figuras de estilo antiguo | onum | S1 | Reemplaza los números con números de estilo antiguo en caja , a menudo tambiénpnum |
Figuras proporcionales | pnum | S1 | Reemplaza números con glifos de ancho proporcional, a menudo también onum |
Figuras tabulares | tnum | S1 | Reemplaza números con glifos de ancho uniforme, a menudo también lnum |
Fracciones | frac | S4 | Convierte cifras separadas por barra con fracción diagonal |
Fracciones alternativas | afrc | S4 | Figuras Convierte separados por barra con alternativa fracción apilada forma |
Denominador | dnom | S1 | Convierte a la forma apropiada de denominador de fracción, invocada por frac |
Numerador | numr | S1 | Convierte a la forma apropiada de numerador de fracciones, invocada por frac |
Inferiores científicos | sinf | S1 | como en "H 2 O", "SO x " o "YC b C r " (pero usando el mismo peso de fuente y posición predefinida en contraste con estos subs y sups HTML sin formato) |
Cero cortado | zero | S1 | Reemplaza 0 figura con 0 cortado |
Griego matemático | mgrk | S1 | Reemplaza los caracteres griegos con formas especiales para su uso en matemáticas. |
Formas de acento aplanadas | flac | | |
Formas sin puntos | dtls | | |
Alternativas de estilo de escritura matemática | ssty | | |
Funciones de ligadura y formas alternativas pensadas para todos los scripts
Nombre largo | etiqueta | tipo | Descripción |
---|
Acceder a todos los suplentes | aalt | S1,3 | Característica especial: se utiliza para presentar al usuario la posibilidad de elegir todas las formas alternativas del personaje |
Chapoteo | swsh | S1,3 | Reemplaza el personaje con o muestra múltiples versiones con swashed |
Swash contextual | cswh | S8 | Convierte la letra en una versión con swash basada en los caracteres alrededor de la letra |
Alternativas contextuales | calt | S6 | Aplica una segunda función de sustitución basada en una coincidencia de un patrón de carácter dentro de un contexto de patrones circundantes |
Formas históricas | hist | S1 | Formas obsoletas de caracteres que se aplicarán a discreción del usuario, cf. hlig |
Formularios localizados | locl | S1 | Sustituye el carácter con la forma preferida según el lenguaje de escritura. |
Aleatorizar | rand | S3 | Reemplaza el carácter con formas aleatorias (destinado a simular la escritura a mano) |
Formularios de anotación alternativos | nalt | S1,3 | Proporciona acceso de usuario a dígitos en círculos, letras inversas, etc. |
Variante de personaje 1–99 | cv01– cv99 | S3 | Varias variantes de un solo carácter, que pueden no aplicarse a muchos otros caracteres, consulte las referencias para obtener documentación voluminosa |
Suplentes estilísticos | salt | S1,3 | Reemplaza o muestra una lista de alternativas estilísticas para un personaje |
Conjunto estilístico 1 - 20 | ss01- ss20 | S1 | Reemplaza el personaje con uno de un conjunto de alternativas estilísticas específicas de la fuente |
Subíndice | subs | S1 | Reemplaza el carácter con la versión de subíndice, cf. numr |
Sobrescrito | sups | S1 | Reemplaza el carácter con la versión en superíndice, cf. dnom |
Titulación de suplentes | titl | S1 | Reemplaza los caracteres con formas adecuadas para letras grandes, como en los títulos. |
Alternativas de variación requeridas | rvrn | S1 | Variantes especiales de un solo carácter, que deben aplicarse a una variación de fuente específica, requerida por fuentes variables |
Ligaduras contextuales | clig | S8 | Aplica una segunda función de ligadura basada en una coincidencia de un patrón de carácter dentro de un contexto de patrones circundantes |
Ligaduras discrecionales | dlig | S4 | Ligaduras para ser aplicadas a discreción del usuario |
Ligaduras históricas | hlig | S1 | Ligaduras obsoletas para ser aplicadas a discreción del usuario. |
Ligaduras estándar | liga | S4 | Reemplaza (por defecto) la secuencia de caracteres con un solo glifo de ligadura |
Funciones de posicionamiento destinadas a todos los scripts
Nombre largo | etiqueta | tipo | Descripción |
---|
Composición / Descomposición de Glifos | ccmp | S4,2 | O llama a un reemplazo de ligadura en una secuencia de caracteres o reemplaza un carácter con una secuencia de glifos. Proporciona una lógica que puede, por ejemplo, alterar eficazmente el orden de los caracteres de entrada. |
Interletrado | kern | P2,8 | Posicionamiento horizontal fino de un glifo al siguiente, basado en las formas de los glifos |
Colocación de la marca | mark | P4,5 | Posicionamiento preciso de un glifo de marca en un carácter base |
Posicionamiento marca a marca | mkmk | P6 | Posicionamiento preciso de un glifo de marca a otro carácter de marca |
Límites ópticos | opbd | P1 | Vuelve a colocar los glifos al principio y al final de la línea, para una justificación precisa del texto. |
Límites a la izquierda | lfbd | P1 | Vuelve a colocar los glifos al final de la línea. Llamado por opbd . |
Límites a la derecha | rtbd | P1 | Vuelve a colocar los glifos al principio de la línea. Llamado por opbd . |
Funciones especiales destinadas a todos los scripts
Nombre largo | etiqueta | tipo | Descripción |
---|
Tamaño óptico | size | | No es una búsqueda: la tabla de funciones proporciona a las aplicaciones información sobre la apariencia y la intención de la fuente, para ayudar en la selección de la fuente. |
Adornos | ornm | S3,1 | Alternativas decorativas para el personaje de bala • |
Leyenda de códigos de sustitución y posicionamiento
A continuación se enumeran los tipos de tablas de búsqueda de OpenType, tal como se utilizan en la columna "tipo" de las tablas anteriores. S significa sustitución y P significa posicionamiento . Tenga en cuenta que a menudo una característica puede ser implementada por más de un tipo de tabla y que, a veces, la especificación no indica explícitamente el tipo de tabla.
abrev. | tipo | descripción |
---|
S1 | GSUB 1 | simple sustitución de un glifo por otro |
S2 | GSUB 2 | sustitución múltiple de un carácter por varios glifos |
S3 | GSUB 3 | selección de variantes |
S4 | GSUB 4 | ligaduras |
S5 | GSUB 5 | sustitución contextual |
S6 | GSUB 6 | sustitución contextual encadenada |
S7 | GSUB 7 | extensión para tablas GSUB de más de 64kB |
S8 | GSUB 8 | sustitución contextual encadenada inversa |
P1 | GPOS 1 | posicionamiento de un solo glifo |
P2 | GPOS 2 | posicionamiento de par de glifos |
P3 | GPOS 3 | adjunto cursiva |
P4 | GPOS 4 | posicionamiento de los glifos de marca en relación con la base |
P5 | GPOS 5 | posicionamiento de los glifos de marca en relación con la ligadura |
P6 | GPOS 6 | posicionamiento de glifos de marca en relación con otro glifo de marca |
P7 | GPOS 7 | posicionamiento contextual |
P8 | GPOS 8 | posicionamiento contextual extendido |
P9 | GPOS 9 | extensión para tablas GPOS de más de 64kB |
Características que toman un valor, mutuamente excluyente del resto:
- Anotación
nalt
- Sin anotación
- Anotación de caja
- Anotación de caja redondeada
- Anotación circular
- Anotación de círculo invertido
- Anotación entre paréntesis
- Anotación de período
- Anotación de números romanos
- Anotación de diamante
- Alternativas de personajes
- Sin suplentes
- ...
rand; aalt, calt, falt, jalt, salt, ssXX, hkna/vkna, rtla, vrt2
- Forma de personaje
half, ruby; ljmo, vjmo, tjmo
- Caracteres tradicionales
trad
- Caracteres simplificados
smpl
- Personajes de JIS 1978
jp78
- Personajes de JIS 1983
jp83
- Personajes de JIS 1990
jp90
- Caracteres tradicionales, conjunto alternativo 1… 5
tnam, hojo, nlck
- Personajes expertos
expt, locl
- Espaciado latino CJK
- Medio ancho
hwid, halt
- Proporcional
pwid, palt
- Latín predeterminado
- Latín de ancho completo
fwid
- Conexión cursiva
init, medi/med2, fina/fin2/fin3; haln, nukt, vatu, rphf, pres, pstf/psts
- Desconectado
isol
- Parcialmente conectado
calt, clig
- Cursivo
curs
- Complejidad del diseño
- Nivel de diseño 1
- Nivel de diseño…
- Diacríticos
- Mostrar diacríticos
- Ocultar diacríticos
- Descomponer diacríticos
ccmp
- Fracciones
- Sin fracciones
- Fracciones verticales
afrc
- Fracciones diagonales
frac, dnom, numr
- Espaciado ideográfico
- Ancho completo
fwid
- Proporcional
pwid, palt
- Espaciado Kana
- Ancho completo
fwid
- Proporcional
pwid, palt
- Caso de carta
case
- Mayúsculas y minúsculas
- Todas las mayúsculas
- Todo en minúsculas
- Letras minúsculas
smcp, pcap
- Tapas iniciales
c2sc, c2pc
- Mayúsculas iniciales y minúsculas
- Número de caso
- Números en minúscula
onum
- Números en mayúsculas
lnum
- Espaciado de números
- Números monoespaciados
tnum
- Números proporcionales
pnum
- Conjuntos de adornos
ornm
- Ninguno
- Dingbats
- Personajes Pi
- Fleurons
- Fronteras decorativas
- Simbolos Internacionales
- Simbolos Matemáticos
mgrk
- Espaciado de texto
- Proporcional
pwid, palt
- Monoespacio
fwid
- Medio ancho
hwid, halt
- Normal
- Posición vertical
- Sin posición vertical
- Superiores
supr
- Inferiores
subs, sinf
- Ordinales
ordn
Funciones que toman varios valores:
- Ligaduras
- Ligaduras requeridas
rlig, clig
- Ligaduras comunes
liga
- Ligaduras raras
hlig, dlig
- Logotipos
- Fotos de Rebus
- Ligaduras de diptongo
- Ligaduras cuadradas
- Ligaduras cuadradas, abreviadas
- Extras matemáticos
- Guión a menos ('-' → '-')
- Asterisco para multiplicar ('*' → '×')
- Barra para dividir ('/' → '÷')
- Ligaduras de desigualdad
- Exponentes
- Swashes inteligentes
swsh, cswh
- Swashes iniciales de palabra
- Palabras clave finales
- Swashes iniciales de línea
- Línea final Swashes
falt
- Swashes no finales
jalt
- Opciones de estilo
- Sin opciones de estilo
- Mostrar texto
size
- Texto grabado
- Tapas iluminadas
- Mayúsculas de titulación
titl
- Gorras altas
- Transcripción
locl
- Extras tipográficos
- Guiones para Em Dash ('-' → '-')
- Guión para En Dash ('-' → '-')
- Cero sin barra
zero
- Forma Interrobang ('!?' / '?!' → '‽')
- Cotizaciones inteligentes ('"'" '→' “'”')
- Periodos hasta elipsis ('...' → '...')
Funciones binarias que solo se pueden activar:
- Todas las características tipográficas
- Reordenamiento lingüístico
- Caracteres superpuestos
- Sustitución vertical