GNU Unifont es una fuente de mapa de bits Unicode gratuita que utiliza un formato de fuente de mapa de bits intermedio creado por Roman Czyborra. El Unifont principal cubre todo el Plano Multilingüe Básico (BMP). El compañero "superior" cubre partes importantes del plano multilingüe suplementario (SMP). El complemento "Unifont JP" contiene kanji japoneses presentes en el conjunto de caracteres JIS X 0213 .
Categoría | Unicode , mapa de bits , Sans-serif |
---|---|
Clasificación | Duospace |
Diseñador (s) | Roman Czyborra, Paul Hardy |
Fecha de creacion | 1998 |
Glifos | 2,096,578 |
Licencia | Licencia pública general GNU |
Muestra | |
Mostrado aqui | 13.0.06 |
Ver todos los personajes | |
Sitio web | unifoundry savannah |
Está presente en la mayoría de los sistemas operativos libres y sistemas de ventanas como Linux , XFree86 o X.Org Server y algunos firmware embebidos como RockBox . La fuente se publica bajo la Licencia Pública General GNU Versión 2+ con una excepción de incrustación de fuentes (incrustar la fuente en un documento no requiere que el documento se coloque bajo la misma licencia).
Se convirtió en un paquete GNU en octubre de 2013. El responsable actual es Paul Hardy.
Estado
El plano multilingüe básico Unicode cubre 2 16 (65,536) puntos de código. De este número, 2.048 están reservados para uso especial como pares sustitutos UTF-16 y 6.400 están reservados para uso privado . Esto deja 57.088 puntos de código a los que se pueden asignar glifos. Algunos de estos puntos de código son valores especiales que no tienen un glifo asignado, pero la mayoría tiene glifos asignados.
A partir de mayo de 2019[actualizar], GNU Unifont tiene una cobertura completa del plano multilingüe básico como se define en Unicode 12.1.0. Sus fuentes complementarias, Unifont Upper y Unifont CSUR, tienen una cobertura significativa del plano multilingüe suplementario y el registro Unicode de ConScript , respectivamente.
Para la versión 12.1.02, se lanzó Unifont JP, que cubre 10,000 kanji japoneses presentes en el conjunto de caracteres JIS X 0213 , algunos de los cuales están en el plano ideográfico complementario . Se deriva de Jiskan16, una fuente de dominio público.
Cualquier colaborador puede aumentar los scripts que estén completos en menos del 100%.
El gran bloque de cerca de 20.000 CJC ideogramas se ha copiado de WenQuanYi 's Unibit fuente con permiso. [1] ( Wen Quan Yi: Primavera de letras )
Sin embargo, a pesar de su cobertura, Unifont almacena solo un glifo por punto de código Unicode imprimible, debido a esto, no presenta las características OpenType necesarias para renderizar scripts con diseños complejos correctamente y posicionar correctamente los diacríticos combinados con letras base si estas combinaciones no son codificado en Unicode en su forma combinada previamente; además, no se manejan las formas contextuales (incluidos los tipos de unión y los clústeres adjuntos). Esto aumenta el número de glifos para incluir en la fuente básica y actualmente no es posible (debido a las limitaciones actuales de OpenType) codificar todos los glifos necesarios para representar todas las combinaciones requeridas que pueden existir en un solo plano Unicode (esto también es cierto para Fuentes chinas que no pueden cubrir completamente todos los ideogramas actualmente codificados en dos planos, y también en un tercer plano). Entonces, Unifont solo se puede utilizar como fuente predeterminada de "último recurso", adecuada para scripts alfabéticos simples o para representar caracteres aislados, pero hará que los textos reales sean difíciles o, en ocasiones, imposibles de leer correctamente. Para representar correctamente las abugidas índicas (y las abjads semíticas si están escritas con sus diacríticos de combinación opcionales), se deben especificar otras fuentes en las hojas de estilo antes de esta, y se necesitarán fuentes adicionales para cubrir los ideogramas Han codificados en planos complementarios, o para representar la mayoría scripts históricos (o minoritarios modernos) no codificados en el BMP .
Distribución
Unifont, a partir de la versión 12.0.0, está disponible en formatos vectoriales TTF , BDF y PCF para la "compilación estándar". Solo la compilación TrueType se divide en Unifont y dos fuentes complementarias. [1]
Se han construido algunas "versiones especializadas" a pedido y Paul Hardy las ha puesto a disposición. Estos incluyen un mapa de bits TTF (SBIT) con glifos vacíos llenos de valores de puntos de código para que los usuarios de FontForge lo lean, un mapa de bits PSF con glifos para programadores APL y versiones de un solo archivo en formato .hex de Roman (ver más abajo). [1] La organización real de la fuente consiste en archivos .hex más pequeños que se unen y se convierten a otros formatos en una compilación. [2]
Vectorización
Luis Alejandro González Miranda escribió scripts para vectorizar y convertir la fuente BDF a formato TrueType usando FontForge . [3] Paul Hardy ajustó estos guiones para manejar la combinación de caracteres (acentos, etc.) para las últimas versiones de TrueType. [1] ( Generación de fuentes TrueType )
formato .hex
El formato .hex de GNU Unifont define sus glifos como 8 o 16 píxeles de ancho por 16 píxeles de alto. La mayoría de los glifos de escritura occidental se pueden definir como de 8 píxeles de ancho, mientras que otros glifos (en particular, el conjunto chino-japonés-coreano o CJK) se definen normalmente como de 16 píxeles de ancho.
El archivo unifont.hex contiene una línea para cada glifo. Cada línea consta de un punto de código hexadecimal Unicode de cuatro dígitos, dos puntos y la cadena de mapa de bits. La cadena de bits tiene 32 dígitos hexadecimales para un glifo de 8 píxeles de ancho o 64 dígitos hexadecimales para un glifo de 16 píxeles de ancho. El objetivo es crear un formato intermedio que facilite la adición de nuevos glifos.
Un 1
bit en la cadena de bits corresponde a un píxel "activado". Los bits de los píxeles se almacenan de arriba a abajo, de izquierda a derecha.
Ejemplo
Esta es una fuente de ejemplo que contiene un glifo, para ASCII mayúscula 'A'.
0041: 0000000018242442427E424242420000
El primer número es el punto de código Unicode hexadecimal, con un rango de 0000 a FFFF. El hexadecimal 0041 es el decimal 65, el punto de código de la letra 'A'. Los dos puntos separan el punto de código del mapa de bits. En este ejemplo, el glifo tiene 8 píxeles de ancho, por lo que la cadena de bits tiene 32 dígitos hexadecimales.
La cadena de bits comienza con 8 ceros, por lo que las 4 filas superiores estarán vacías (2 dígitos hexadecimales por byte de 8 bits, con 8 bits por fila para un glifo de 8 píxeles de ancho). La cadena de bits también termina con 4 ceros, por lo que las 2 filas inferiores estarán vacías. De esto se desprende implícitamente que el descendente de fuente predeterminado está 2 filas por debajo de la línea de base, y la altura del capital es 10 filas por encima de la línea de base. Este es el caso de GNU Unifont con glifos latinos.
Con el tiempo, se han creado varias formas de manejar el formato. La primera forma es el hexdraw
script Perl, que convierte la cadena en una representación artística ASCII para editarla en un editor de texto. Otro método implica generar una cuadrícula de imágenes de mapa de bits para un rango completo de puntos de código y trabajar con un editor de imágenes. En cualquier caso, los glifos editados se vuelven a convertir posteriormente en archivos .hex para su almacenamiento. [2]
Salida real | Espaciado para facilitar la lectura |
---|---|
0041:––––––––––––––––––––––––––––––––––– ██ –––––█ –– █––––█ –– █–––█ –––– █––█ –––– █––██████––█ –––– █––█ –––– █––█ –––– █––█ –––– █–––––––––––––––––
| 0041:- - - - - - - -- - - - - - - -- - - - - - - -- - - - - - - -- - - █ █ - - -- - █ - - █ - -- - █ - - █ - -- █ - - - - █ -- █ - - - - █ -- █ █ █ █ █ █ -- █ - - - - █ -- █ - - - - █ -- █ - - - - █ -- █ - - - - █ -- - - - - - - -- - - - - - - -
|
Historia
Roman Czyborra creó el formato Unifont en 1998 [4] después de esfuerzos anteriores que datan de 1994.
En 2008, Luis Alejandro González Miranda escribió un programa para convertir Unifont en una fuente TrueType. Paul Hardy lo modificó más tarde para admitir la combinación de caracteres en la versión TrueType.
Más tarde, Richard Stallman publicó Unifont como un paquete GNU en octubre de 2013, con Paul Hardy como su responsable.
Referencias
- ^ a b c d Glifos de GNU Unifont
- ^ a b "Utilidades Unicode de Unifoundry" . unifoundry.com . Consultado el 16 de abril de 2019 .
- ^ GNU Unifont en formato TrueType , archivado desde el original el 2016-02-01
- ^ Página de GNU Unifont de Roman Czyborra
- El Consorcio Unicode: El estándar Unicode 5.0 . 5º, Addison Wesley 2007; ISBN 0-321-48091-0 .
enlaces externos
- Archivos del proyecto GNU
- Unifoundry.com Página de GNU Unifont