freetype
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Freetype] Native Type 1 and CFF hints [was: Auto-hinter improvemen


From: David Turner
Subject: Re: [Freetype] Native Type 1 and CFF hints [was: Auto-hinter improvements]
Date: Wed, 16 May 2001 11:20:06 +0200

Hi Tom,

Tom Kacvinsky a écrit :
> 
> Hi David,
> 
> May I ask how you will be implementing native Type 1 and CFF hints?
> 
Yes of course :-)

The idea is to design two modules, instead of one, in order to implement
automatic and native hinting.

- The first module, let's called it the "hinter", analyses
  a font and glyph outlines in order to detect features like
  stems, serifs, etc..

  It then produces a table of data that is associated to the
  current glyph slot. These are really "hints", though the
  format used to store them is really different from the one
  defined in the T1 spec.

- the second module, let's called it the "fitter", will parse
  the table of hints and align glyph outlines accordingly,
  trying to preserve stem widths, counters, etc..

The TrueType driver will use both modules as you can probably
imagine.

Meanwhile, the T1/CID/CFF modules will need to convert the
native font hints into the "appropriate" format, and send them
to the "fitter" module.

Of course, it's just a broad overview of how it's working.
I didn't speak about global or family hints, for example..
Also, in the new scheme, each font driver will be responsible
for calling the "hinter" and/or "fitter" modules (in the
current design, the auto-hinter by-passes them automatically,
but this introduces complexity, and creates problems with
embedded bitmaps for example).

My most interesting and challenging problem is currently to
design a "hint format" that suits both the output of the
"hinter" module and the native T1/CID/CFF ones. They're
pretty difficult to match, indeed.

I wouldn't be surprised if I preliminarily released T1/CID/CFF
drivers that use both modules at first (there would be minimal
changes), which means we need really good "hinters" and
"fitters".

(actually, the "hinter" seems pretty good right now, the
 "fitter" is still giving strange problems, and I'm
 developing a complete "glyph previewer" in order to
 better understand what's happening).

Hope this helps,

Regards,

- David



reply via email to

[Prev in Thread] Current Thread [Next in Thread]