-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Hi,
I've installed version 4 of AccuFont package and changed default font as accujen. The problem is that if I replace the StrikeFont with StrikeFontSet made with original font like this:
accujenArray _ (TextConstants at: #Accujen) fontArray. a12 _ accujenArray at: 3. af12 _ StrikeFontSet newFontArray: {a12}. accujenArray at: 3 put: af12.
then, the separator characters like tab, cr and others displayed as something like '?' glyph. If I revert it as StrikeFont then, it just displayed as normal invisible glyph.
Can anyone know this problem? Can anyone help me? I'm using 3.8
Thank in advance.
Sungjin,
I've installed version 4 of AccuFont package and changed default font as accujen. The problem is that if I replace the StrikeFont with StrikeFontSet made with original font like this:
accujenArray _ (TextConstants at: #Accujen) fontArray. a12 _ accujenArray at: 3. af12 _ StrikeFontSet newFontArray: {a12}. accujenArray at: 3 put: af12.
then, the separator characters like tab, cr and others displayed as something like '?' glyph. If I revert it as StrikeFont then, it just displayed as normal invisible glyph.
Can anyone know this problem? Can anyone help me? I'm using 3.8
I tried the same thing in 3.8. I copied and pasted the code above into a workspace evaluated it, and then changed the code in the workspace to "Accujen 12", but it looks ok.
Is there something not shown in the above code? Are you using a character with different language tab other than 0? If so, you may set up the fallbackFont instance variable.
Sorry for slow response. Hope this helps,
-- Yoshiki
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
I've found the source of the problem. When glyph of a character is requested and the character's ascii value is less than font's minimum ascii value, then ? is returned. This is why ? is displayed for tab or other special characters.
Yoshiki Ohshima wrote:
I've installed version 4 of AccuFont package and changed default font as accujen. The problem is that if I replace the StrikeFont with StrikeFontSet made with original font like this:
accujenArray _ (TextConstants at: #Accujen) fontArray. a12 _ accujenArray at: 3. af12 _ StrikeFontSet newFontArray: {a12}. accujenArray at: 3 put: af12.
then, the separator characters like tab, cr and others displayed as something like '?' glyph. If I revert it as StrikeFont then, it just displayed as normal invisible glyph.
Can anyone know this problem? Can anyone help me? I'm using 3.8
I tried the same thing in 3.8. I copied and pasted the code above into a workspace evaluated it, and then changed the code in the workspace to "Accujen 12", but it looks ok.
Is there something not shown in the above code? Are you using a character with different language tab other than 0? If so, you may set up the fallbackFont instance variable.
Sorry for slow response. Hope this helps,
-- Yoshiki
Sungjin,
I've found the source of the problem. When glyph of a character is requested and the character's ascii value is less than font's minimum ascii value, then ? is returned. This is why ? is displayed for tab or other special characters.
Hmm. while it is true, the Accujen fonts in 3.8-6665 are tweaked so that they have 0 as their minAscii.
((StrikeFont allInstances) select: [:e | e familyName beginsWith: 'Accujen']) collect: [:f | f minAscii] => #(0 0 0 0 0 0)
Now I can't point exactly, but the installation script of m17n system has expression to change the minAscii value of fonts.
(and also...)
((StrikeFont allInstances) select: [:e | e familyName beginsWith: 'Accujen']) collect: [:f | f maxAscii] => #(255 255 255 255 255 255)
Can you tell me a bit more to reproduce the problem?
-- Yoshiki
squeak-dev@lists.squeakfoundation.org