Tipografía
Esta página contiene apuntes sobre el mundo de la tipografía aplicados a la informática.
Sumario
Enlaces y referencias
- Ref: La métrica tipográfica
- Ref: Adobe Font Metrics File Format Specification version 4.1
- Ref: Fuentes Postscript en la Wikipedia
- Ref: Página de la wikipedia española sobre los tipos de letra
- Ref: The (preliminary) TrueType HOWTO
- Ref: TrueType Fonts in Debian mini-HOWTO
- Ref: Fonts on Debian Wiki
Conceptos
Puntos PostScript
El lenguaje PostScript emplea un sistema de coordenadas cartesianas para describir el contenido gráfico de una página. Dicho sistema se expresa en puntos tipográficos cuyo valor corresponde a un setentaydosavo de pulgada (1/72").
En el caso de una página ISO A4, cuyas dimensiones son 8,258" de ancho y 11,693" de largo, contiene 585,29 puntos postscript de ancho por 891,89 puntos postscript de largo.
AFM
AFM es el acrónimo de Adobe Font Metrics, archivos que contienen tanto información general de una fuente como métricas de caracteres individuales. En la práctica se emplean directa y casi exclusivamente en entornos UNIX.
Un archivo con esta extensión puede contener líneas como:
StartFontMetrics 4.1 FontName LucidaConsole FullName Lucida Console Notice Copyright <A9> 1993 Bigelow & Holmes Inc. All rights reserved. EncodingScheme FontSpecific FamilyName Lucida Console Weight Regular Version Version 0.91 Characters 223 ItalicAngle 0.0 Ascender 789 Descender -211 UnderlineThickness 50 UnderlinePosition -100 IsFixedPitch true FontBBox 0 -211 603 789 StartCharMetrics 256 C 0 ; WX 603 ; N .notdef ; B 125 0 478 625 ; C 1 ; WX 603 ; N .notdef ; B 125 0 478 625 ; C 2 ; WX 603 ; N .notdef ; B 125 0 478 625 ; ...
Mapas
Los mapas de fuentes son necesarios al menos para utilidades como enscript y consisten en un archivo de texto plano que relaciona los nombres completos de las fuentes tipográficas con los correspondientes archivos en el directorio donde residen ambos.
Para crear el mapa se emplea el programa mkafmmap, una utilidad muy sencilla que incluye el programa enscript, de forma parecida a ésta:
$ cd $HOME/fonts $ mkafmmap -p font.map *.afm file=font.map andale.afm... lucon.afm... onuava.afm... profont.afm... verasans.afm... $ cat font.map AndaleMono andale LucidaConsole lucon Onuava onuava ProFontWindows profont BitstreamVeraSansMono-Roman verasans
TrueType
El tipo de letra llamado TrueType es de tipo escalable y fue creado inicialmente por la empresa Apple.
Los archivos que contienen estos tipos de letra suelen tener la extensión .ttf
.
Recetario
Convirtiendo tipografías TrueType a PostScript Type1
Para convertir tipos de letra TrueType a formato PostScript Type 1 se puede emplear el programa ttf2pt1 que da prácticamente todo el trabajo hecho. Suponiendo que tengamos una tipografía en el archivo LucidaTypeWriterRegular.ttf y necesitamos una versión Type 1 con el juego de caracteres Latin1 usaremos:
$ ttf2pt1 -e -a -GA -l latin1 LucidaTypeWriter/LucidaTypewriterRegular.ttf Auto-detected front-end parser 'ttf' (use ttf2pt1 -p? to get the full list of available front-ends) Processing file LucidaTypeWriter/LucidaTypewriterRegular.ttf Some font name strings are in Unicode, may not show properly Creating file LucidaTypeWriter/LucidaTypewriterRegular.pfb numglyphs = 1376 Found Unicode Encoding Guessed italic angle: 0.000000 Warning: glyph rubelhizbarabic needs hint stack depth 198 (limit 128): removed the substituted hints from it Warning: glyph thothanthai needs hint stack depth 147 (limit 128): removed the substituted hints from it FontName LucidaSans-Typewriter No Kerning data Finished - font files created $ ls -1tr LucidaTypeWriter/ .. LucidaTypeWriterRegular.afm LucidaTypeWriterRegular.pfb
Convirtiendo fuentes PostScript binarias a ASCII
Los archivos con extensión .pfb
contienen una tipografía PostScript en binario y como en ocasiones se necesita una versión en ASCII (para poder incluirlo en un documento concreto) se puede usar el programa pfb2pfa del paquete texlive-binaries de esta forma:
$ pfb2pfa -v andale.pfb Type: 1, plain text, length 5978 Type: 2, binary data, length 53134 Type: 1, plain text, length 532 Type: 3, End of file $ ls -1 andale.* andale.afm andale.pfa andale.pfb
Instalando tipografías
Una vez se tiene el archivo con la fuente tipográfica instalarlo para emplearlo en la cuenta personal es sencillo. Copiar en el directorio adecuado y utilizar fc-cache y fc-list para darlos de alta.
$ mkdir ~/.fonts $ cp -R archivos_tipografia ~/.fonts $ fc-cache -v ... /usr/local/share/fonts: caching, new cache contents: 0 fonts, 0 dirs /home/victor/.local/share/fonts: skipping, no such directory /home/victor/.fonts: caching, new cache contents: 0 fonts, 1 dirs /var/cache/fontconfig: not cleaning unwritable cache directory /home/victor/.cache/fontconfig: cleaning cache directory /home/victor/.fontconfig: cleaning cache directory fc-cache: succeeded $ fc-list ... /home/victor/.fonts/Slate W01 Light/Slate W01 Light.ttf: SlateW01\-Light:style=Regular /usr/share/fonts/truetype/freefont/FreeMono.ttf: FreeMono:style=Regular,нормален,normal,obyčejné,... , unta,सामान्य ... $