|
Font::FNT - Load, manipulate and save Windows raster fonts |
Font::FNT - Load, manipulate and save Windows raster fonts
use Font::FNT();
my $fnt = Font::FNT->load('test.fnt');
$fnt->save_yaml('test.yml');
# scite test.yml
$fnt = Font::FNT->load_yaml('test.yml');
$fnt->save_pbm('test.pbm');
$fnt->save('test.fnt');
This module provides basic load, manipulate and save functionality for Windows 3.00 raster fonts (.FNT files).
The test directory contains a serialized Font::FNT instance (1252_13x8_OEM.yml) that can be used to install a nice Console (Terminal) font - at least on a Windows NT 4.0 box. Other Windows versions may require other steps.
The font is similar to the bold BorlandTE font (BORTE.FON) or Raize font.
Let's create the .FNT file first:
use Font::FNT();
Font::FNT->load_yaml('t/1252_13x8_OEM.yml')->save('t/1252_13x8_OEM.fnt');
Normally, various .FNT files for different sizes and weights are packaged together as resources in a Windows DLL (.FON file). BTW: most .FON files are good old Windows 3.1 DLLs. For our purpose, the .FNT file is o.k.
Next, add something like
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts] "1252 13x8 OEM"="1252_13x8_OEM.fnt"
to your registry, copy the font by hand
copy t\1252_13x8_OEM.fnt %SystemRoot%\Fonts
and reboot your system.
If you don't need control about your registry entries, then you can simply drag'n drop t/1252_13x8_OEM.fnt into the Fonts Control Panel Applet.
Now, if you open the Console properties dialog or the Console Control Panel Applet, go to the font tab and select 'Raster Fonts', you should see a new entry in the 'Size' listbox:
8 x 13
Configuring the font in the Control Panel results in the following registry entries:
[HKEY_CURRENT_USER\Console] "FaceName"="Terminal" "FontSize"=dword:000d0008
Finally, you should change the Console codepage:
mode con cp select=1252
or
chcp 1252
To change the codepage permanently, add the following to your registry:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage] "OEMCP"="1252"
Steffen Goeldner <sgoeldner@cpan.org>
Copyright (c) 2004 Steffen Goeldner. All rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
http://support.microsoft.com/?scid=kb;EN-US;65123
http://support.microsoft.com/?scid=kb;EN-US;76535
http://support.microsoft.com/?scid=kb;EN-US;247815
http://support.microsoft.com/?scid=kb;EN-US;153449
http://www.microsoft.com/globaldev/reference/cphome.mspx
http://partners.adobe.com/asn/developer/pdfs/tn/5005.BDF_Spec.pdf
This format is similar in spirit to the YAML serialization of a Font::FNT instance.
the perl manpage, the YAML manpage, the Image::Pbm manpage.
|
Font::FNT - Load, manipulate and save Windows raster fonts |