DISKFONT Types Reference

Per-function autodoc pages link to these types via the type name (e.g., [List](types-diskfont.md#list)).

Clickable inner types: inside each struct definition, field types that are themselves structs/unions/enums are clickable hyperlinks to their own definitions.

Contents

diskfont.h


AvailFonts

Source: diskfont/diskfont.h


struct AvailFonts {
    UWORD   af_Type;        /* MEMORY, DISK, or SCALED */
    struct TextAttr af_Attr; /* text attributes for font */
};


AvailFontsHeader

Source: diskfont/diskfont.h


struct AvailFontsHeader {
    UWORD   afh_NumEntries;  /* number of AvailFonts elements */
    /* struct AvailFonts afh_AF[], or struct TAvailFonts afh_TAF[]; */
};


DiskFontHeader

Source: diskfont/diskfont.h


struct DiskFontHeader {
    /* the following 8 bytes are not actually considered a part of the  */
    /* DiskFontHeader, but immediately preceed it. The NextSegment is   */
    /* supplied by the linker/loader, and the ReturnCode is the code    */
    /* at the beginning of the font in case someone runs it...      */
    /*   ULONG dfh_NextSegment;         \* actually a BPTR  */
    /*   ULONG dfh_ReturnCode;          \* MOVEQ #0,D0 : RTS    */
    /* here then is the official start of the DiskFontHeader...     */
    struct Node dfh_DF;      /* node to link disk fonts */
    UWORD   dfh_FileID;     /* DFH_ID */
    UWORD   dfh_Revision;   /* the font revision */
    LONG    dfh_Segment;    /* the segment address when loaded */
    TEXT    dfh_Name[MAXFONTNAME]; /* stripped font name (null terminated) */
    struct TextFont dfh_TF;  /* loaded TextFont structure */
                /* dfh_TF.tf_Message.mn_Node.ln_Name */
                /* points to the full font name */
};


EGlyphEngine

Source: diskfont/diskfont.h


struct EGlyphEngine {
    APTR                ege_Reserved;     /* System reserved, don't touch */
    struct Library     *ege_BulletBase;
    struct GlyphEngine *ege_GlyphEngine;
};


FontContents

Source: diskfont/diskfont.h


struct FontContents {
    TEXT    fc_FileName[MAXFONTPATH];
    UWORD   fc_YSize;
    UBYTE   fc_Style;
    UBYTE   fc_Flags;
};


FontContentsHeader

Source: diskfont/diskfont.h


struct FontContentsHeader {
    UWORD   fch_FileID;     /* FCH_ID */
    UWORD   fch_NumEntries; /* the number of FontContents elements */
    /* struct FontContents fch_FC[], or struct TFontContents fch_TFC[]; */
};


OutlineFont

Source: diskfont/diskfont.h


struct OutlineFont {
    STRPTR               olf_OTagPath;    /* full path & name of the .otag file */
    struct TagItem      *olf_OTagList;    /* relocated .otag file in memory     */
    STRPTR               olf_EngineName;  /* OT_Engine name                     */
    STRPTR               olf_LibraryName; /* OT_Engine name + ".library"        */
    struct EGlyphEngine  olf_EEngine;     /* All NULL if OFF_OPEN not specified */
    APTR                 olf_Reserved;    /* for future expansion               */
    APTR                 olf_UserData;    /* for private use                    */
};


TAvailFonts

Source: diskfont/diskfont.h


struct TAvailFonts {
    UWORD   taf_Type;       /* MEMORY, DISK, or SCALED */
    struct TTextAttr taf_Attr;  /* text attributes for font */
};


TFontContents

Source: diskfont/diskfont.h


struct TFontContents {
    TEXT    tfc_FileName[MAXFONTPATH-2];
    UWORD   tfc_TagCount;   /* including the TAG_DONE tag */
    /*
     *  if tfc_TagCount is non-zero, tfc_FileName is overlayed with
     *  Text Tags starting at:  (struct TagItem *)
     *      &tfc_FileName[MAXFONTPATH-(tfc_TagCount*sizeof(struct TagItem))]
     */
    UWORD   tfc_YSize;
    UBYTE   tfc_Style;
    UBYTE   tfc_Flags;
};