../Other UI parts/FontsHome
Fonts
Some bits of control on font display MS didn't provide:
 
Font smoothing
Running Windows 95 and want the font smoothing (recommended resource hogger) ? Microsoft released this part of the 95 plus package for free (it's included with later Windows versions). Smoothing doesn't apply to TTF fonts at 8-13 points, while those are the sizes that are shown mostly. Reason is this is encoded in the fonts themselves for these sizes, for clarity's sake. Nicholas Withers pointed us to a console tool that changes the info in the .ttf file, TTFGasp by Iglyph. Also, there's aaTTF by Something Decent.

Note: while this may be a real enhacement when using fonts in graphic applications etc, backup the fonts when used in your GUI. It doesn't always make display more readable.

Thomas Thomassen has some reservations and another way to get this done. "To explain this I have to get a bit technical on you. As you know, the antialiasing setting is stored in each font. The different settings are:
  • Hinted - No antialiasing at all, normally used for small font sizes 7 to 13. the "hinting" means it's kindof fitted to a grind to increase readability.
  • Smoothed - Antialiasing, used normally for font sizes at 6 and smaller. No hinting/grindfitting.
  • Hinted and Smoothed - Antialiased and grindfitted, combination of the two above, normally used for font sizes 14 and above.
Now, what aaTTF does is apply the Smoothed setting for all the sizes. this may not be notable for larger sizes but for the normal sizes like 7 to 13 that normally isn't anti-aliases at all it degrades the readability. The anti-aliasing setting for a font file should look more like this to ensure better readabillity:
0 to 6 - Hinted
7 to 13 - Hinted and Smoothed
14 + - Hinted and Smoothed
To do this, I used a shareware program called Font Creator. When you got that, all you need to do is open your desired font, from the menu, choose Format/Grayscale. Then, from the list witch defines the sizes, choose the one witch normally ranges from 7 and above and check "Grayscale-rendering" in the checkbox below the list. Then save the file and your set. UNLESS, it's a system font witch Windows will hang on to tight. Like Tahoma, (widely used in win2k as default font, witch makes your system look really nice afterward if you anti-aliases it) and Arial."
Thomas recommends booting to a command line, with bootdisk/install cd to replace for system fonts, details here, as these fonts are in use with any other option.
Windows XP finally gives some control in itself. By default, you'll find icontext to be white, with a shadow added. You can customize shadow effect/clarity online, here, by turning "cleartype" for fonts on, and tune it later. Great for LCD screens, mostly NOT for a normal screen. To disable the shadow, rightclick My Computer, choose properties. At the advanced tab, click the settings button for visual effects. Select "custom" and disable the dropshadow item for icon labels in the list. Now how to change text color with shadow applied ?!

For more control, check out ClearerType by 545 Studios (free). And there's ClearTweak.
MS shell dialog font
"MS Sans Serif" is the font seen everywhere in Windows, also on all the "OK", "Apply" buttons, tab titles etc. It's also the one font you can't change by "display properties". Here's how to change it, but beware: using an improper font can resize a lot of dialogs and more, making your system hard to handle... so stick to the common, well designed fonts.

For Win 9x open (C:\Windows\)Win.ini. There's an entry [FontSubstitutes]. Add a line, directly underneath, like "Ms Sans Serif=YourFont". Use the name displayed when you preview the font, not the .ttf name and not the more friendly name displayed in the fonts folder (though it's often the same). Also, there may be two entries here, depending on your Windows version, called "MS Shell Dlg" and "MS Shell Dlg 2". Enter your font there too.
Now close and save, and go to (C:\Windows\)Fonts and remove all Ms Sans Serif variations. Put them somewhere you can easily put them back. Works immediately the first time, every other change in this line requires a restart.

In Windows 2000, open the registry and go to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes. Select the string value "MS Shell Dlg" and rename that to whatever font that you want it to use (check naming rules above).
Note #1: thanks Mimi for Windows 2000 info. In both situations, it's the size of the alternative that can give you trouble. Like Mimi mentiones, Tahoma is a bit wider and will disorder for instance the color choice dialogs. A personal favorite, Haettenschweiler, gets displayed way too small. A way around this issue is to create a bitmapped version of the font (.ttf to .fon) at the size you'd like and/or works, if you've got the software to make them. (For Tahoma, 8. For Haettenschweiler, 10, but still some little things messed up...)

Note #2: this is all tricky and precise stuff... a bit too small or big and stuff gets messed up. We've managed to get the conversion done with the trial version of Softy. Font editing software comes with exceptional prices, most of the time. This is a cheaper, though still shareware, alternative. Be sure to also change the name/header information in the font. If not done, you'll place a font (be it a .fon instead of .ttf) with the same name as allready present in the fonts folder, and you'll see explorer crashing immediately, Windows only starting up in safe mode etc... Another cheap and pretty good application is Font Creator, by High-Logic.

Note #3: while most applications call for "ms shell dlg", some call up ms sans serif directly... you might encounter some preferences dialogs etc with extreme font sizes, messed etc anyway, with the font missing in Win 9x...
XP, we've only briefly played with the regkey above, still present. For now, we only seem able to get it working if we indeed remove the font we want to change (wanted Lucida Console for the command prompt replaced), but after that, OS tries stuff to nót listen to it. Command prompt skipped to a raster font and general trouble all the way. Got any ideas ?
Top

xhtml 1.1