home *** CD-ROM | disk | FTP | other *** search
- Output Quality
-
-
-
- Legality
- --------
- Copyright 1991 by Michael Jansson. All Rights Reserved.
-
- This file is a part of the vfont distribution. It may only be
- distributed in companion with the other parts of the vfont
- distribution. It may be freely distributed for non-profitable
- purposes only.
-
-
- Introduction
- ------------
- This font machinery is so far, at some extent, fulfilling two
- of the goals I set up when I started this project; speed and
- power. The most important goal is, however, good looking
- rendered characters.
-
- This file contains some notes about quality, some hints of what
- kind of quality you can expect and how you can achieve it.
-
-
- Creating small fonts
- --------------------
- Writing a font machinery for a computer screen is much hard
- than writing such a beast for a printer due to the difference
- in resolution. A normal sized character on a page is usually
- 10 points high, which is roughly equal to 30 pixel on a decent
- printer or laser writer. Re-scaling a font that was designed
- at 1000x1000 to the size 30x30 will lead to a character that
- look a bit "rough". Re-scaling a font that was designed at
- 1000x1000 to the size 8x8 will lead to a ridiculous result! The
- poor result has nothing to do with round-off errors in the
- computation, but on the fact that a mathematically correct scaled
- font is NOT what will look best.
-
- An example; Assume that the font machinery is about to re-size
- a character "O". Assume that the character is defined by a
- number of coordinates, which are given in a floating point
- format with sufficiently high precision. Assume that all
- calculation is done in this floating-point format, and then
- finally rounded to the nearest point on a raster. It is now
- easy to see that there are sizes where this method will
- give a character that has a left side that is wider/thinner
- then the right side, due to the discreet raster.
-
-
- Hinting
- -------
- So what was the problem with the above method? Absolutely
- nothing! The font machinery can only produce as good result as
- it is mathematically possible WITH THE GIVEN DATA. The key
- thing here is that quality can be improved if there are
- information that the font machinery can use to preserve
- symmetrical aspects of characters. It basically boils down to
- using some extra data to "cheat" when doing the transformation
- to the raster, such as saying "every point that is near enough
- to the baseline should probably be on the baseline". This is
- known as HINTING, and has been used with amazing results on
- many font system.
-
- The vFont machinery are only supporting hinting in a very
- limited way. What is the effect of this then? Well, don't
- expect any mind blowing results of heavily scaled fonts. You can
- still achieve very good result if you follow the following rule;
- use a font class that was designed for a size that is close to
- the desired font size.
-
-
- Creating good looking small fonts
- ---------------------------------
- Opening a bitmap font with the xdf_diskfont library and using
- the font at the original size will give you EXACTLY the same
- quality as if you would have used that font with the ordinary
- graphics functions.
-
-
- Creating good looking large fonts
- ---------------------------------
- Opening a vectorized font (FontoGrapher, vfont etc.) at fairly
- large size (say 32 pixel high, or higher) will also give you
- quite good results.
-
-
- Creating no-good looking fonts
- ------------------------------
- Attempting to look at a vectorized font as a small font, or
- looking at a bitmap font as a large font will result in a poor
- result.
-