¿Hay alguna forma aceptada de ajustar los glifos de fuente para simular figuras de texto ?
Las cifras del texto son dígitos "en minúsculas". Normalmente usa dígitos en minúsculas donde también usa texto en minúsculas (por ejemplo, en medio de una oración).
Nunca se crearon teclados con dígitos en mayúsculas y minúsculas; y Unicode no los codifica específicamente, ya que "no se consideran caracteres separados de las figuras de revestimiento, solo una forma diferente de escribir los mismos caracteres".
Lo cual me lleva a mi pregunta; ¿Cuál es la forma aceptada de crear cifras en minúsculas a partir de las "mayúsculas" estándar de una fuente?
Wikipedia menciona que normalmente :
012
son x
-altura68
tener ascendentes34579
tener descendientesMi primer intento (en photoshop) sería:
Pero las cifras skwooshed (0, 1, 2) parecen claramente desagradables.
Si el consorcio Unicode sugiere que los "dígitos en minúsculas" se pueden construir simplemente a partir de los "mayúsculas", ¿qué me recomiendan que haga?
Mi objetivo final es mostrar texto en minúsculas en un navegador. Sé que algunas fuentes (por ejemplo, Georgia) ya muestran todos sus dígitos en minúsculas:
Pero no estoy preguntando cómo cambiar para usar Georgia ; Estoy preguntando cómo construir figuras de revestimiento a partir de las que no lo están.
Y dado que esto es para mostrar en la web, me doy cuenta de que probablemente termine teniendo que aplicar el formato por carácter:
<!doctype html">
<html>
<head>
<style type="text/css">
body {
font-family: "Segoe UI", "Calibri", sans-serif;
font-size: larger;
}
.xheight {
font-size: 1.5ex;
}
.descender {
position: relative;
bottom: -0.4ex;
}
</style>
</head>
<body>
<p>In the year <span class="xheight">21</span><span class="descender">5</span><span>6</span> the Romulan war...
</body>
</html>
Renderizado como:
Lo cual, de nuevo, no parece tan agradable como creo que debería.
La respuesta muy corta es "No".
Las cifras de estilo antiguo ("minúsculas") se dibujan específicamente de esa manera. Las fuentes Postscript y TrueType heredadas, en su mayor parte, contienen solo figuras tabulares, que son alineadas o de estilo antiguo según la forma en que se diseñó la fuente.
El Consorcio Unicode no sugiere que las figuras de línea se puedan distorsionar en figuras de estilo antiguo, simplemente que solo hay un conjunto de valores Unicode para los dígitos 0-9, independientemente de si hay varios glifos para cada dígito.
Muchas fuentes OpenType contienen tanto figuras de forro como de estilo antiguo, tanto en anchos tabulares como proporcionales, siendo las figuras de forro tabular el valor predeterminado habitual. Todos estos están disponibles para aplicaciones que son compatibles con OpenType, generalmente a través de una configuración de preferencia en un estilo de carácter o párrafo. Comparten valores Unicode, pero son glifos alternativos dibujados por separado que existen (o no) como contornos en el software de fuentes. (De las familias de fuentes en su CSS, Calibri tiene figuras de estilo antiguo, pero la interfaz de usuario de Segoe no).
Desde un punto de vista tipográfico, no solo no hay una forma aceptada de hacer lo que pides, diría que tampoco hay una forma aceptable . Como ha descubierto, tratar de llegar allí cambiando las líneas de base y distorsionando las figuras lineales se ve horrible.
La forma correcta de representar dígitos/números en minúsculas o "cifras de estilo antiguo" es usar CSS para seleccionar una función de fuente adecuada. Obviamente, la fuente utilizada debería admitir esta función de fuente en primer lugar. El soporte del mundo real con fuentes web no parece ser demasiado fuerte.
La configuración de CSS que está buscando es
font-feature-settings: "onum";
y la documentación:
La documentación de las características de OpenType, y onum
la característica en particular, se puede encontrar en el registro de etiquetas OpenType Layout de Microsoft .
La documentación alternativa sobre las características de las fuentes está disponible en el artículo Cómo codificar características OpenType en CSS .
Oficialmente, se supone que debes usar
font-variant-numeric: oldstyle-nums;
pero el soporte para eso parece ser aún más débil según la referencia de compatibilidad del navegador de Mozilla .
En teoría, esto es mejor porque no se refiere directamente a las funciones OpenType, por lo que también debería funcionar con fuentes que no sean OpenType. De la misma manera debes usar:
font-variant: small-caps;
para habilitar las versalitas . No utilice la configuración de la función OpenType, como
font-feature-settings: "smcp";
para lograr este efecto porque font-variant
la propiedad ya está bien respaldada.
font-variant: small-caps;
porque eso crea letras pequeñas FALSAS . Utilice siempre el otro y utilice siempre fuentes OpenType. Sencillo y resuelto.acceptable
si la small-caps
característica es falsa. Eso no es un requisito y un agente de usuario de alta calidad haría lo correcto (asignarlo a la función OpenType). Estoy de acuerdo en que si prefiere no tener cambio en lugar de pequeñas mayúsculas falsas, debe usar font-feature-settings
. Por lo general, las pequeñas capitalizaciones falsas son mejores que no tener ningún efecto.
e100
Horacio
Ian Boyd
A
(U+0041
), minúsculasa
(U+0061
) e incluso sᴍᴀʟʟ cᴀᴘɪᴛᴀʟᴀ
(U+1D00
)? Es decir, ¿cuál podría ser el razonamiento que excluye los dígitos separados en mayúsculas y minúsculas, pero incluye letras separadas en mayúsculas y minúsculas?Ian Boyd
alan gilbertson
alan gilbertson
Ian Boyd
Charmap
, que solo muestra caracteres Unicode. Sé que charmap no admite la investigación de otras características de fuentes, como las ligaduras. Obviamente, tengo que buscar un "visor de fuentes" . Pero saber que Calibri los admite me da un punto de referencia para cualquier espectador que encuentre.Wrzlprmft
Wrzlprmft