/*  %kw # %v    %n    %d    %t # */
/* Version # 2    METFONTS.H    21-Jan-93    17:47:54 # */
/* *************************************************************** *
 *    METFONTS.H - MetaWINDOW FONT FILE RECORD DATA STRUCTURE      *
 *   Copyright (c) 1985-1992  Metagraphics Software Corporation    *
 * *************************************************************** */

typedef struct _ofswid    /* Offset/Width Table Entry              */
  { unsigned char  wid;      /* character width                    */
    signed   char  ofs;      /* character offset                   */
  } ofswid;

typedef struct  _fontRcd     /* MetaWINDOW FONT DATA HEADER RECORD */
  {
  Byte           fontVer;       /* Font format version number (=2)    */
  Byte           fontRev;       /* Font style revision designation    */
  Byte           fontNameLen;   /* Font baseName length (0-15)        */
  char           fontBaseName[16]; /* Font Base Name                  */
  char           fontSuffix1[10];  /* Font suffix 1                   */
  char           fontSuffix2[10];  /* Font suffix 2                   */
  char           fontSuffix3[10];  /* Font suffix 3                   */
  char           fontFacing;    /* Synthesized font facing flags      */
  char           fontSign[8];   /* 'METAFONT' signature               */

  Byte           fontWeight;    /* Font weight                        */
  Byte           fontCoding;    /* Character set encoding             */
  long           fontSize;      /* Buffer size needed to hold font    */
  Word           fontMax;       /* Maximum character code             */
  Word           fontMin;       /* Minimum character code             */
  short          fontPtSize;    /* Point Size                         */
  short          fontfamily;    /* Font family                        */
  short          fontStyle;     /* Device style                       */
  short          fontFlags;     /* Font flags                         */
  long           fontColor[2];  /* Font Character & bkground colors   */

  Byte           minChar;       /* Minimum ASCII character code       */
  Byte           maxChar;       /* Maximum ASCII character code       */
  short          chWidth;       /* Fixed space character width        */
  short          chHeight;      /* Character height                   */
  short          chKern;        /* Fixed space character offset       */
  short          ascent;        /* Ascent                             */
  short          descent;       /* Descent                            */
  short          lnSpacing;     /* Vertical spacing between baselines */
  Word           chBad;         /* Char to show for undefined codes   */
  short          chCenter[2];   /* Icon or Marker center (X,Y)        */
  short          chAngle;       /* Italicise slant angle              */
  short          chUnder;       /* recommended txUnder setting        */
  short          chScore;       /* recommended txScore setting        */
  long           locTbl;        /* offset to locTable                 */
  long           ofwdTbl;       /* offset to ofwdTable                */
  long           kernTbl;       /* offset to kernTable                */
  long           sizeTbl;       /* offset to size/rotation tbl(strk)  */
  long           grafMapTbl;    /* offset to font grafMap structure   */
  long           rowTbl;        /* offset to grafMap rowTable(s)      */
  long           fontTbl;       /* offset to font bitImage/nodes tbl  */
  long           fontNotice;    /* offset to trademk/cpyright notice  */
  long           fontSupplier;  /* offset to name of font supplier    */
  long           fontAuthor;    /* offset to name of font author      */
  long           fontInfo;      /* offset to miscellaneous font info  */
  long           fontDate;      /* offset to font creation date       */
  fxdpnt         fontSpacing;   /* Vertical spacing between baselines */
  fxdpnt         fontLowHgt;    /* baseline to top of lowercase 'x'   */
  fxdpnt         fontCapHgt;    /* baseline to top of capital 'H'     */
  fxdpnt         fontAscent;    /* baseline to top of lowercase 'd'   */
  fxdpnt         fontDescent;   /* baseline to bottom of lowercase 'p'*/
  fxdpnt         fontMaxWid;    /* maximum character width            */
  fxdpnt         fontAvgWid;    /* average character width            */
  fxdpnt         fontEmWid;     /* Em space width                     */
  short          fontRsvd;      /*   (reserved for future use)        */
  long           offwidTbl[16]; /* offset to facing off/wid tables    */
/*short          fontData[];*/  /* font data/image tables (variable)  */
  }  fontRcd;

/* End of file - METFONTS.H */



