Squeak fonts

Boris Gaertner Boris.Gaertner at gmx.net
Mon Feb 3 21:04:41 UTC 2003

<zeppy at australia.edu> wrote:

> Hi!
> I've noticed that there aren't that many fonts available in Squeak.
Yes, our image contains Atlanta in two sizes, NewYork in
four sizes, Comic Bold in five sizes andComic Plain in four sizes.
As an add-on we have the really beautiful AccuFonts on all
platforms. On window platforms we have  more: Andreas Raab
wrote a plugin that allows us to create  bitmapped fonts from
TrueType fonts. Recently, Yoshiki Ohshima added code that
does not need a platform specific plugin to  render glyphs
from a TT-Font. His code works on all platforms that are
equipped with TrueType-fonts, and it gives nice results.

The Squeak character display machinery does not support
kerning. Therefore the use of decorative TT-fonts that require
kerning does not always give the best results.

Like Smalltlak-80, Squeak uses bitmapped fonts. (an instance
of class StrikeFont contains the bitmaps for all glyphs of a
font in one size). The more sophisticated outline fonts were never
completely brought to Squeak. We can read TTF-files and we can
create unhinted glyphs, but we never added the code to execute
glyph hints. Apple owns three patents on glyph hinting, so we
would certainly need a licence from Apple to implement their patented
algorithms in Squeak. (see www.freetype.org for details about
OpenType fonts, glyph hinting and the Apple patents. The site
gives even the numbers of said patents - for those who want to
know all details). Hints are short programs that are written for
a virtual machine that has special instructions to grid-fit glyph
outlines at small  sizes.(hey, Smalltalk had a virtual machine
years before TrueType fonts came into use!)
For some time, the Squeak developers were associated with Apple,
but regrettably that company never donated glyph hinting technology
to Squeak.  :-(

The code from Yoshiki is platform independent and it is
pure Squeak which means that you can easily modify it to
extract glyphs for various scripts (like greek or cyrillic) from
TT-fonts that support these scripts.

The plugin from Andreas is a good solution for Windows:
It calls code that you licenced together with Windows. That
code uses glyph hints and it rasterizes hinted TT-Fonts
in the same quality that  you know from other programs that
use the same code. The use of licenced Windows software
avoids licence problems but it comes at a price: It works only
on Windows.

> I would have thought with object technology that it wouldn't be a problem
> to have more.
Honestly spoken, I do not see that fonts are the best field to demonstrate
the power of object technology. Well, the plugin from Andreas is a nice
example of what can be done for one dedicated platform. (This remark
assumes that you agree that DLLs are object technology.)
> Why isn't there and how involved is this topic.
Most of us think that complete platform-independent support for
TrueType or OpenType outline fonts is obstacled by licence
problems. We can of course draw our own bitmapped fonts
but that is time-consuming work!
The page www.freetype.org gives some answers to the last
question: How involved is this topic.

Greetings, Boris

More information about the Squeak-dev mailing list