a question about fonts
Dwight Hughes
dwighth at ipa.net
Fri Apr 23 17:47:56 UTC 1999
If you haven't already, take a look at http://fonts.apple.com/ -- they have
the full TrueType Reference online, plus still more info on fonts.
Also, check out the FreeType project which is working to create a free,
portable, TrueType engine: http://www.freetype.org/ .
-- Dwight
"Norton, Chris" wrote:
>
> 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
> in)
> * Rasterizing software is generally built into most windowing operating
> systems
> * 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
|