Ezt a részt kicsit tapasztaltabb medvevadászoknak ajánlom. A shell parancsokat nem teszteltem, és bár ilyesmiket használtam, nem kizárt az elgépelés... Általában a paraméterek a 16 pixel magas fontokra ,,ülnek'', 14/8 pixelre ,,portolni kell''. :)
Állítólag van DOS-os font editor, de egy igazi harcos sosem nyúlna ehhez. Az SVGATextMode csomag /contrib/changefont alkönyvtárában lévő ,,dump.c'' és ,,undump.c'' programokkal szövegfájlt készítünk a fontból. Valahogy így:
$ mkdir work/font $ cp work/font $ dump <../azenyém.fnt | sed 's/ /./g' | split -16A font ne legyen a work/font alkönyvtárban, csak probléma van vele. Ha nincs ,,sed'' (micsoda ?!), akkor ,, tr ' ' '.' '' is megteszi.
$ set *; for i in 0 1 2 3 4 5 6 7 8 9 a b c d e f; do for j in 0 1 2 3 4 5 6 7 8 9 0 a b c d e f; do mv $1 $i$j; shift done; done
És már kész is vannak kicsi fájlocskák, a fájl neve a betű hexakódja, a fájl tartalma maga a betű. Szövegszerkeszthető, másolható, miegymás. A nagy munka közben érdemes néha leellenőrizni a fájlok számát:
$ echo * | wc -w
Meg azt is, hogy valamelyik fájl mérete nem változott-e meg:
$ ls -al | grep -v 144
Jó szolgálatot tehet a Midnight Commander. (pl. %s helyettesítés, stb.) A font összetákolása:
$ cat * | sed 's/\./ /g' | undump >../azenyém.version0.1.fntilletve:
$ cat * | tr '.' ' ' | undump >../azenyém.version0.1.fnt
Ebből .psf így készíthető:
$ dd if=../egy.bármilyen.16.pixel.magas.psf bs=1 count=4 >../psfheader $ cat ../psfheader ../azenyém.fnt >../azenyém.psf
Érdemes csinálni egy fájlt, amiben az összes nyomtatható karakter benne van, szépen hexa táblázatban (13.1. kép):
Ilyesmi gyártható a:
$ hexdump -e '"%02.2_ax " 4/1 "%c" " " 4/1 "%c" " " 4/1 "%c" " " 4/1 "%c" " " "\n"' 256 >256.xparanccsal, persze csak akkor, ha már van egy fájlunk, ami szépen sorban tartalmazza a 0..255 karaktereket. Hogy honnan legyen ilyen? Nem kell C programot írni, MÉG MIELŐTT HOZZÁKEZDENÉNK AZ EGÉSZ FONTPISZKÁLÁSHOZ:
$ echo -e '\033(U' $ mapscrn -o 256
És a biztonság kedvéért ezt is írassuk ki hexdumppal...
Bocs a szómenésért, de ez volt a legérdekesebb rész. :) A többit a fantáziátokra bízom. Jó szórakozást!