diff options
Diffstat (limited to 'pxl/pxbfont.ps')
-rw-r--r-- | pxl/pxbfont.ps | 25 |
1 files changed, 12 insertions, 13 deletions
diff --git a/pxl/pxbfont.ps b/pxl/pxbfont.ps index c2f0ee075..ce841c380 100644 --- a/pxl/pxbfont.ps +++ b/pxl/pxbfont.ps @@ -6,7 +6,6 @@ % /usr/bin/gs -I/usr/lib/ghostscript -q -dNODISPLAY pxbfont.ps >pxbfont.c - % Put space last so we can fake the width. /Chars @@ -48,28 +47,28 @@ Chars { 1 string dup 0 4 -1 roll put /Ch exch def erasepage 0 36 moveto Ch show 0 Res - % Remove blank lines at bottom. + % Remove blank lines at bottom. { 2 copy eq { exit } if dup 1 sub ID exch Row copyscanlines ZRow ne { exit } if 1 sub } loop - % Remove blank lines at top. + % Remove blank lines at top. { 2 copy eq { exit } if 1 index ID exch Row copyscanlines ZRow ne { exit } if exch 1 add exch } loop - % Determine the character width. + % Determine the character width. /B 0 def /W 0 def 2 copy 1 sub 1 exch { ID exch Row copyscanlines pop Row length 1 sub -1 W { Row 1 index get dup 0 ne - { 1 index W eq { B or } if /B exch def /W exch def exit - } - if pop pop + { 1 index W eq { B or } if /B exch def /W exch def exit + } + if pop pop } for } @@ -83,17 +82,17 @@ Chars 2 copy eq { pop pop Base dup } if % empty character /Asc Asc Base 4 index sub max def /Desc Desc 2 index Base sub max def - % Write the character code. + % Write the character code. (\t) print Ch 0 get =only ( /* ) print Ch =only ( */, ) print - % Write the character header. - % We use the PCL5 format, rather than the PCL XL format, - % so that we can represent the inter-character spacing. + % Write the character header. + % We use the PCL5 format, rather than the PCL XL format, + % so that we can represent the inter-character spacing. (4, 0, 14, 1, 0, 0, 0, 0, ) =only Base 2 index sub print16 (, ) print WB print16 (, ) print 2 copy exch sub print16 (, ) print WB 4 mul print16 (,) = - % Write the bits. + % Write the bits. 1 sub 1 exch { ID exch Row copyscanlines 0 W 1 add getinterval { =only (,) print @@ -114,7 +113,7 @@ const int px_bitmap_font_resolution = ) print Res =only (; (const byte px_bitmap_font_header[] = { 0, 0, 0, 14, 254, 0, 0, ) print Chars length =only (, 'B', 'R', 0, 0, 0, 4, - 0, ) print Res =only (, 0, ) print Res =only (, + 0, ) print Res =only (, 0, ) print Res =only (, 0xff, 0xff, 0, 0, 0, 0 }; const uint px_bitmap_font_header_size = sizeof(px_bitmap_font_header); |