[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Devel] Apple's 'gvar' table and friends
From: |
Masatake YAMATO |
Subject: |
Re: [Devel] Apple's 'gvar' table and friends |
Date: |
Wed, 24 Mar 2004 16:47:42 +0900 (JST) |
The gxlayout contains the loader for fvar.
> * 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.
The max of coordinates(== 4) is statically given in the multi-master
interface of FT2.
Masatake YAMATO
/***************************************************************************/
/* CVAR */
/***************************************************************************/
typedef struct GX_GvarRec_
{
GX_TableRec root;
FT_Fixed version;
FT_UShort axisCount;
FT_UShort globalCoordCount;
FT_ULong offsetToCoord;
FT_UShort glyphCount;
FT_UShort flags;
FT_ULong offsetToData;
union {
FT_UShort * u16;
FT_ULong * u32;
} offset;
/* TODO */
} GX_GvarRec, *GX_Gvar;
/***************************************************************************/
/* GVAR */
/***************************************************************************/
/* TODO */
/***************************************************************************/
/* FVAR */
/***************************************************************************/
typedef struct GX_FontVariationsSFNTVariationAxisRec_
{
FT_ULong axisTag;
FT_Fixed minValue;
FT_Fixed defaultValue;
FT_Fixed maxValue;
FT_UShort flags;
FT_UShort nameID;
} GX_FontVariationsSFNTVariationAxisRec, * GX_FontVariationsSFNTVariationAxis;
typedef struct GX_FontVariationsSFNTInstanceRec_
{
FT_UShort nameID;
FT_UShort flags;
FT_Fixed * coord; /* GX_FvarRec::axisCount */
} GX_FontVariationsSFNTInstanceRec, *GX_FontVariationsSFNTInstance;
typedef struct GX_FvarRec_
{
GX_TableRec root;
FT_Fixed version;
FT_UShort offsetToData;
FT_UShort countSizePairs;
FT_UShort axisCount ;
FT_UShort axisSize ;
FT_UShort instanceCount ;
FT_UShort instanceSize ;
GX_FontVariationsSFNTVariationAxis axis; /* axisCount */
GX_FontVariationsSFNTInstance instance; /* instanceCount */
} GX_FvarRec, *GX_Fvar;