[Contents] [Index] [Help] [Retrace] [Browse <] [Browse >]

The KERN chunk describes a kerning pair.  A kerning pair sets the
distance between a specific pair of characters.

    struct KERNstruct {
        short   Ch1, Ch2;  /* The pair to kern (allows for 16 bits...) */
        IEEE    XDisplace, /* Amount to displace -left +right */
                YDisplace; /* Amount to displace -down +up */
    };

The Ch1 and Ch2 fields contain the pair of characters to kern.  These
characters are typically stored as ASCII codes.  Notice that OFNT
stores the characters as a 16-bit value.  Normally, characters are
stored as 8-bit values.  The wary programmer will be sure to cast
assigns properly to avoid problems with assigning an 8-bit value to a
16-bit variable.  The remaining fields, XDisplace and YDisplace,
supply the baseline shift from Ch1 to Ch2.