X11 puede utilizar tanto el formato .pfa
como el formato .pfb
. Los tipos para X11 se encuentran en varios subdirectorios bajo /usr/X11R6/lib/X11/fonts
. Cada tipo es una referencia cruzada entre su nombre X11 y el contenido del archivo fonts.dir
en cada directorio.
Ya existe un directorio llamado Type1
. La forma más sencilla de añadir un nuevo tipo es ponerla en ese directorio. Una forma aun mejor sería colocar todos los tipos que quiera añadir en un directorio separado y utilizar un enlace simbólico a los tipos adicionales. Esto permite identificar los tipos sin mezclarlos con los originales. Por ejemplo:
Crear un directorio para alojar los archivos de tipos.%
mkdir -p /usr/local/share/fonts/type1
%
cd /usr/local/share/fonts/type1
Coloque los archivos .pfa, .pfb y .afm aquí Puede incluir también los archivos README, así como la documentación de los tipos%
cp /cdrom/fonts/atm/showboat/showboat.pfb .
%
cp /cdrom/fonts/atm/showboat/showboat.afm .
Así se mantiene el índice para la referencia cruzada de los tipos%
echo showboat - InfoMagic CICA, Dec 1994, /fonts/atm/showboat >>INDEX
Para poder usar el nuevo tipo en X11 debe hacer que el archivo de tipo esté disponible y actualizar el nombre del tipo. Los nombres de los tipos de X11 tienen este aspecto:
-bitstream-charter-medium-r-normal-xxx-0-0-0-0-p-0-iso8859-1 | | | | | | | | | | | | \ \ | | | | | \ \ \ \ \ \ \ +----+- juego de caracteres | | | | \ \ \ \ \ \ \ +- ancho promedio | | | | \ \ \ \ \ \ +- espaciado | | | \ \ \ \ \ \ +- resolución vertical. | | | \ \ \ \ \ +- resolución horizontal. | | | \ \ \ \ +- puntos | | | \ \ \ +- píxeles | | | \ \ \ tipo familia densidad inclinación anchura estilo adicional
Cada nuevo tipo necesita tener un nombre específico. Si en la documentación que acompaña al tipo encuentra la información requerida puede usarla como base para crear el nombre. Si no hay información puede hacerse una idea utilizando el comando strings(1) en el tipo. Por ejemplo:
%
strings showboat.pfb | more
%!FontType1-1.0: Showboat 001.001 %%CreationDate: 1/15/91 5:16:03 PM %%VMusage: 1024 45747 % Generated by Fontographer 3.1 % Showboat 1991 by David Rakowski. Alle Rechte Vorbehalten. FontDirectory/Showboat known{/Showboat findfont dup/UniqueID known{dup /UniqueID get 4962377 eq exch/FontType get 1 eq and}{pop false}ifelse {save true}{false}ifelse}{false}ifelse 12 dict begin /FontInfo 9 dict dup begin /version (001.001) readonly def /FullName (Showboat) readonly def /FamilyName (Showboat) readonly def /Weight (Medium) readonly def /ItalicAngle 0 def /isFixedPitch false def /UnderlinePosition -106 def /UnderlineThickness 16 def /Notice (Showboat 1991 by David Rakowski. Alle Rechte Vorbehalten.) readonly def end readonly def /FontName /Showboat def --stdin--
Basándonos esta información podríamos usar un nombre como este:
-type1-Showboat-medium-r-normal-decorative-0-0-0-0-p-0-iso8859-1
Los componentes de nuestro nombre son:
Vamos a nombrar todos los tipos nuevos como type1
.
El nombre del tipo.
Normal, negrita, media, seminegrita, etc. En la salida del comando strings(1) que acabamos de mostrar vemos que este tipo tiene una densidad media.
roman, cursiva, oblicua, etc. Dado que ItalicAngle es cero, se utilizará roman.
Normal, ancha, condensada, extendida, etc. Hasta que pueda ser examinada, suponemos que será normal.
Generalmente se omite, pero esto indicará que el tipo contiene mayúsculas decorativas.
proporcional o monoespaciado. La opción Proportional se usa cuando isFixedPitch es false.
Todos estos nombres son arbitrarios, pero uno debe tratar de ser compatible con las convenciones existentes. El nombre hace referencia al tipo con posibles comodines del programa X11, por lo que el nombre elegido debe tener algún sentido. Simplemente puede comenzar a usar
…-normal-r-normal-…-p-…
como nombre, y luego usar xfontsel(1) para examinarla y ajustar el nombre en función de la apariencia del tipo.
Para completar nuestro ejemplo:
Haga que el tipo esté accesible para X11%
cd /usr/X11R6/lib/X11/fonts/Type1
%
ln -s /usr/local/share/fonts/type1/showboat.pfb .
Edite fonts.dir y fonts.scale, agregando la línea que describe el tipo e incrementando el número de tipos que se encuentran en la primera línea.%
ex fonts.dir :1p 25 :1c 26 . :$a showboat.pfb -type1-showboat-medium-r-normal-decorative-0-0-0-0-p-0-iso8859-1 . :wq
fonts.scale parece ser idéntico a fonts.dir…%
cp fonts.dir fonts.scale
Indique a X11 que las cosas han cambiado%
xset fp rehash
Examine el nuevo tipo%
xfontsel -pattern -type1-*
Referencias: xfontsel(1), xset(1), The X Windows System in a Nutshell, O'Reilly & Associates.
Puede descargar éste y muchos otros documentos desde ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/
Si tiene dudas sobre FreeBSD consulte la
documentación antes de escribir a la lista
<questions@FreeBSD.org>.
Envíe sus preguntas sobre la documentación a
<doc@FreeBSD.org>.