a question about fonts

Bruce O'Neel beoneel at mindspring.com
Fri Apr 23 21:29:34 UTC 1999

  In terms of rasterizers there is a TrueType rasterizer called freetype 
at http://www.freetype.org.  There is a system which uses it with X at 
http://root.cern.ch and the results are pretty good.



>Hi Andreas, Duane, Reiner & other Squeak friends!
>Thanks for the lessons on fonts.  After reading your messages, I did a bit
>of web browsing and I can summarize what I've learned so far about fonts
>(for those lurkers that are interested).
>*  There are 2 types of font:  Bitmap fonts and Outline fonts
>*  Bitmap fonts are pre-rendered for a specific platform resolution and
>point size.
>*  Outline fonts (Andreas called them "Vector" fonts) are fonts that are
>stored as coordinates that describe the outlines of their characters -- True
>Type fonts (invented by Apple & Microsoft) are examples of outline fonts.
>*  Outline fonts are rendered into Bitmap font formats by rasterizing
>software (this connects the dots, draws the curves and fills each character
>*  Rasterizing software is generally built into most windowing operating
>*  There are two types of rasterizing - easy and hard
>*  Easy rasterizing algorithms take the Outline font coordinates and create
>Bitmap fonts out if them, but they do not make use of the auxiliary
>information (often described as "hints").
>*  The more complicated rasterizing algorithms use all available information
>from the Outline font definition to make the most "pretty", scaleable font
>it can.  This process takes longer, so the rendered font is generally cached
>(like in the StrikeFont cache).
>[I gather from your notes that Squeak's rasterizing algorithms only do the
>"easy" rendering, which is accurate only in larger point sizes]
>There is lots of technical jargon on the web (and in the Squeak sources)
>about fonts, and it is no easy task to find documents that describe all of
>the terms (I'm still wondering what "kerning", "ligatures" and "splines"
>are, although I can guess at their meanings from the context)
>Question:  Since OS's apparently come with built in rasterizing software,
>couldn't a primitive call be added to Squeak to accomplish the more
>difficult rasterizing tasks?  If an Outline font could be converted into a
>Bitmap font, by passing it with size parameters to the OS rasterizing
>routines, then the generated Bitmap font could be converted (if needed) and
>cached in the StrikeFont cache.  [Note:  I still know nothing about
>primitives, so this may be a dumb question]
>Observation 1:  Even if Squeak's rasterizing algorithms can only handle the
>"simple" rasterizing, I think that adding "asStrikeFont" behavior to the
>TTSampleFontMorph would be of benefit for at least some point sizes.  These
>could be used for banners, titles, etc. in our Morphic projects.
>Observation 2:  Several people have told me that the full rasterizing
>algorithms are also very complex and challenging to write.  The general
>consensus is:  "don't go there".  This may be true, but I have found hints
>on the web (http://w3c1.inria.fr/Fonts/#type1) that there are specs and free
>implementations available that maybe could be ported to Squeak (apparently a
>low quality rasterizer is available in Ghostscript, and rasterizing source
>is distributed with X).  Unfortunately, I am not familiar with either of
>these free sources.
>This is a deep pool, but interesting stuff!
>---==> Chris

More information about the Squeak-dev mailing list