'From Squeak3.8gamma of ''24 November 2004'' [latest update: #6643] on 12 April 2005 at 5:23:05 pm'! "Change Set: FontFixes Date: 12 April 2005 Author: Andreas Raab A few necessary font fixes."! !StrikeFont methodsFor: 'accessing' stamp: 'ar 4/12/2005 17:12'! widthOf: aCharacter "Answer the width of the argument as a character in the receiver." | code | code := aCharacter charCode. ((code < minAscii or: [maxAscii < code]) or: [(xTable at: code + 1) < 0]) ifTrue: [^ self fallbackFont widthOf: aCharacter]. ^ (xTable at: code + 2) - (xTable at: code + 1)! ! !StrikeFontSet methodsFor: 'accessing' stamp: 'ar 4/12/2005 17:14'! ascentOf: aCharacter ^(self fontOf: aCharacter) ascent! ! !StrikeFontSet methodsFor: 'accessing' stamp: 'ar 4/12/2005 17:15'! descentOf: aCharacter ^(self fontOf: aCharacter) descent! ! !StrikeFontSet methodsFor: 'accessing' stamp: 'ar 4/12/2005 17:14'! fontOf: aCharacter "Answer the actual font to use for aCharacter" ^self fontOf: aCharacter ifAbsent:[fontArray at: 1]! ! !StrikeFontSet methodsFor: 'accessing' stamp: 'ar 4/12/2005 17:14'! fontOf: aCharacter ifAbsent: aBlock "Answer the actual font to use for aCharacter" | encoding font | encoding := aCharacter leadingChar + 1. encoding <= fontArray size ifTrue:[font := fontArray at: encoding]. font ifNil:[^aBlock value]. ^font ! ! !StrikeFontSet methodsFor: 'accessing' stamp: 'ar 4/12/2005 17:15'! heightOf: aCharacter ^(self fontOf: aCharacter) height! ! !StrikeFontSet methodsFor: 'accessing' stamp: 'ar 4/12/2005 17:15'! widthOf: aCharacter "Answer the width of the argument as a character in the receiver." ^(self fontOf: aCharacter) widthOf: aCharacter! !