typedef struct VCurveTemplate {
    WORD    R;                      /* The roundness. */
    UBYTE   E;                      /* The edginess. */
    UBYTE   Flags;                  /* Flags. */
    BYTE    FgPen;                  /* Foreground color. */
    BYTE    BgPen;                  /* Background color. */
    BYTE    OlPen;                  /* Outline color. */
    BYTE    DMode;                  /* Draw mode */
} VCurveTemplate;

typedef struct TemplateTag {
    VCurveTemplate temp;
    struct TemplateTag *next;
} TemplateTag;

typedef struct VCurveCmpr {
    Point   *Verticies;             /* The verticies. */
    UWORD   Used;                   /* The number of verticies. */
    VCurveTemplate *template;       /* Rendering settings. */
    WORD    sym_x;                  /* Symetry point. */
    WORD    sym_y;                  /* -"- */
} VCurveCmpr;

typedef struct VClassCharCmpr {
    VCurveCmpr  *Curve;
    UWORD   Width;
    UWORD   Height;
    UWORD   Count;
} VClassCharCmpr;


typedef struct VFontClassCmpr {
    ULONG       FileID;         /* Next font class. */
    UBYTE       *Name;          /* Symbolic name of the font class. */
    UBYTE       *Author;        /* The name of the author. */
    UWORD       XSize;          /* Size of the average template chars. */
    UWORD       YSize;          /* Size of the average template chars. */
    FIX         UpVector;       /* Default Up direction of char. */
    FIX         Tilt;	        /* Factor of italic text. */
    UBYTE       Flags;          /* The flags. */
    UBYTE       Style;          /* The styles. */
    UBYTE       Locked;         /* Semaphore of exlusive use of class. */
    UBYTE       LowChar;        /* First defined character. */
    UBYTE       HighChar;       /* The last defined character. */
    UBYTE       Space;          /* Default spacing between char. */
    VClassCharCmpr  *Chars;     /* The actual definition of chars. */
    UWORD       Baseline;       /* Baseline. */
    UWORD       Users;          /* Accessors. */
    TemplateTag *temp;       /* Rendering templkates. */
    UBYTE       *PointsCmpr;    /* Compressed points. */
} VFontClassCmpr;

#define XDFHCMPR_ID 0x0f88
#define XDFH_ID     0x0f80
