freetype-devel
[Top][All Lists]
Advanced

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

[Devel] Apple's 'gvar' table and friends


From: George Williams
Subject: [Devel] Apple's 'gvar' table and friends
Date: 23 Mar 2004 10:20:15 -0800

   After a good deal of effort (mostly trying to find someone at Apple
who knew anything about it), I believe I finally understand the workings
of Apple's 'gvar' table and friends ([acfg]var).

   Is there any interest in adding support for apple's distortable fonts
to freetype?

   I can provide code to interpret Apple's tables, but I'd rather have
someone who understands the truetype rasterizer (better than I)
undertake the changes to that. Is anyone interested in volunteering?
==============================
As I see it there are several components:

   * Support must be added for the phantom vertical metrics points

   * A routine to detect whether a given truetype font is distortable
        (simply check for both an 'fvar' and a 'gvar' table
         'cvar' and 'avar' are not required).

   * A set of design coordinates must be specified, before a face
                is rasterized.
        I presume the multi-master routines should be used, but
        I don't know the interface there either.

   * These coordinates must be converted into normalized coordinates
        (I can provide a routine to do this)

   * Before 'prep' is called, the 'cvt ' table may need to be modified.
        (I can provide a routine to do this)
        If the autohinter is being used this is probably unnecessary.

   * Before the outline is grid fit, before the locations of implied
                points are calculated, the point locations (including
                phantom points) must be modified.
        (I can provide a routine to do this)

   * Before a glyph made up of components is processed, the translation
                of the components may be modified. This can be done in
                two ways:
                1) Modification of the translation matrix directly
                2) Movement of points in the base/accent glyph to
                   which the accent is attached.
        (I can provide a routine which will return the needed offsets)

   Then transformation matrices should be applied
   things should be grid fit
        (all instances of a distortable glyph share the same
         instructions, but the cvt table may be different).
   and rasterized




reply via email to

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