1 type 2 FontCharInfoType = record 3 offset : SByte; 4 width : SByte; 5 end; 6 7 FontType = record 8 fontType : SWord; 9 firstChar : SWord; 10 lastChar : SWord; 11 maxWidth : SWord; 12 kernMax : SWord; 13 nDescent : SWord; 14 fRectWidth : SWord; 15 fRectHeight : SWord; 16 owTLoc : SWord; 17 ascent : SWord; 18 descent : SWord; 19 leading : SWord; 20 rowWords : SWord; 21 end; 22 23 FontPtr = ^FontType; 24 25 FontTablePtr = ^FontPtr; 26 27 fontID = (stdFont := $00,boldFont,largeFont,symbolFont, 28 symbol11Font,symbol7Font,ledFont,largeBoldFont, 29 fntAppFontCustomBase := $80); 30 31 const 32 checkboxFont = symbol11Font; 33 34 function FntIsAppDefined(fnt : FontID) : boolean; 35 36 function FntGetFont:FontID;systrap sysTrapFntGetFont; 37 function FntSetFont(font:FontID):FontID;systrap sysTrapFntSetFont; 38 function FntGetFontPtr:FontPtr;systrap sysTrapFntGetFontPtr; 39 function FntBaseLine:SWord;systrap sysTrapFntBaseLine; 40 function FntCharHeight:SWord;systrap sysTrapFntCharHeight; 41 function FntLineHeight:SWord;systrap sysTrapFntLineHeight; 42 function FntAverageCharWidth:SWord;systrap sysTrapFntAverageCharWidth; 43 function FntCharWidth(ch:Char):SWord;systrap sysTrapFntCharWidth; 44 function FntCharsWidth(chars:pChar; len:Word):SWord;systrap sysTrapFntCharsWidth; 45 procedure FntCharsInWidth(string:pChar; stringWidthP:pSWord; stringLengthP:pSWord; fitWithinWidth:pBoolean);systrap sysTrapFntCharsInWidth; 46 function FntDescenderHeight:SWord;systrap sysTrapFntDescenderHeight; 47 function FntLineWidth(pChars:pChar; length:Word):SWord;systrap sysTrapFntLineWidth; 48 function FntWordWrap(chars:pChar; maxWidth:Word):Word;systrap sysTrapFntWordWrap; 49 procedure FntWordWrapReverseNLines(chars:pChar; maxWidth:Word; linesToScrollP:WordPtr; scrollPosP:WordPtr);systrap sysTrapFntWordWrapReverseNLines; 50 procedure FntGetScrollValues(chars:pChar; width:Word; scrollPos:Word; linesP:WordPtr; topLine:WordPtr);systrap sysTrapFntGetScrollValues; 51 function FntDefineFont(font:FontID; fontP:FontPtr):Err;systrap sysTrapFntDefineFont; 52