Important: The information in this document is obsolete and should not be used for new development.
Routines
Initializing the Font Manager
pascal void InitFonts (void);Getting Font Information
pascal void GetFontName (short familyID, Str255 theName); pascal void GetFNum (ConstStr255Param name, short *familyID); pascal Boolean RealFont (short fontNum, short size);Using the Current, System, and Application Fonts
pascal short GetDefFontSize (void); pascal short GetSysFont (void); pascal short GetAppFont (void);Getting the Characteristics of a Font
pascal void FontMetrics (const FMetricRec *theMetrics); pascal OSErr OutlineMetrics (short byteCount, const void *textPtr, Point numer, Point denom, short *yMax, short *yMin, FixedPtr awArray, FixedPtr lsbArray, RectPtr boundsArray);Enabling Fractional Glyph Widths
pascal void SetFractEnable (Boolean fractEnable);Disabling Font Scaling
pascal void SetFScaleDisable (Boolean fscaleDisable);Favoring Outline Fonts Over Bitmapped Fonts
pascal void SetOutlinePreferred (Boolean outlinePreferred); pascal Boolean GetOutlinePreferred (void); pascal Boolean IsOutline (Point numer, Point denom);Scaling Outline Fonts
pascal void SetPreserveGlyph (Boolean preserveGlyph); pascal Boolean GetPreserveGlyph (void);Accessing Information About a Font
pascal FMOutPtr FMSwapFont (const FMInput *inRec);Handling Fonts in Memory
pascal void SetFontLock (Boolean lockFlag); pascal OSErr FlushFonts (void);Assembly-Language Summary
Trap Macros
Trap Macros
with Trap Words
Trap macro name Trap word _FMSwapFont $A901 _FontMetrics $A835 _GetFNum $A900 _GetFontName $A8FF _InitFonts $A8FE _RealFont $A902 _SetFontLock $A903 _SetFScaleDisable $A834 Trap Macros Requiring Routine Selectors
_FontDispatch
Selector Routine $7000 IsOutline $7001 SetOutlinePreferred $7008 OutlineMetrics $7009 GetOutlinePreferred $700A SetPreserveGlyph $700B GetPreserveGlyph $700C FlushFonts Global Variables
ApFontID Font ID of application font. CurFMInput The current QuickDraw FMInput
record forFMSwapFont
.FDevDisable Disables device-defined extra spacing for styles. FMDefaultSize The default point size. FMgrOutRecc The current FMOutput
record fromFMSwapFont
.FONDID The resource ID of the last font family resource used. FractEnable If nonzero, fractional widths are enabled. FScaleDisable If nonzero, scaling is disabled. FScaleHFact The current horizontal scale factor. FScaleVFact The current vertical scale factor. IntlSpec International software installed if the value of this is greater than zero. LastFOND Handle to last family record used. LastSPExtra The most recent value of extra spacing for styles. ROMFont0 Handle to font record for system font. SynListHandle Handle to synthetic font list. SysFontFam If nonzero, the font ID to use for the system font. SysFontSiz If nonzero, the size of the system font. UsedFWidths A flag determining whether fractional widths were used for the most recent font request. WidthListHand Handle to a list of handles to recently used width tables (referred to in some places as jFontInfo
).WidthPtr Pointer to global width table. WidthTabHandle Handle to global width table.