[squeak-dev] fonts, characterscanners and dead primitive 103

tim Rowledge tim at rowledge.org
Wed Sep 4 17:41:37 UTC 2013


On 03-09-2013, at 8:59 PM, "H. Hirzel" <hannes.hirzel at gmail.com> wrote:

> Pharo uses Freetype, see a mail from Mariano Martinez Peck, 20th Nov last year
> <marianopeck at gmail.com>
> 
> world menu -> system -> settings -> type "fonts" and hit enter ->
> check on "Use Free type..." (wait that it loads fonts).
> and that's all. Then if you go and select a font, you should see all of them
> 
> I think it is not a big effort to download a Pharo image and check out
> what they have been doing in this area.


I have a Pharo image and have run it; I don't expect to use it much because I find it doesn't please me; of course, I can use it briefly to investigate what other people have done. 
> 
> 
> Assuming Tim breaks the FreeType plugin, is it still possible to
> display Host System True Type fonts?

Well, firstly I'm not intending to break the plugin - it would be difficult since I don't have a password for that repository!
I *might* conclude that the best way to make things better is to 'break' it in the sense of changing image code enough that the plugin would need changing to keep working  - and if that happens and nobody chooses to make similar changes and support them in Pharo/Cuis, then I guess I'd have to fork the plugin code.

TrueType fonts should work exactly as well or as badly as they did. If I find problems I can understand I'll probably manage to fix them, or at least report them. Since TTFs seem pretty much converted to StrikeFonts with slightly different glyph format I don't see much problem. Do TTF files have pair-kerning maps? They're not used in Squeak if so; that might be something worth trying to improve at some point.

Who knows what StrikeFontSets are intended for? I don't see a lot of evidence of usage. I can sort of see evidence that they are (or were?) a way to build a set of glyphs that could cope with a more-than-256-char language from the behaviour of the glyphInfoInt: method, but beyond that… no real idea. No blasted comments! What happened to the old policy of "no comment, no inclusion" ? Similarly TTCFontSets…

To confuse things a bit more, there is a HostFont class that is rather oddly a subclass of StrikeFont and yet seems to load some platform format files (hard to say what since NO DAMN COMMENTS) which include potential kerning data - and then so far as I can see ignores all that and just makes a plain strike font. Oh - and nobody but win32 has the relevant FontPlugin anyway. Obvious question here is whether this is work to be kept and expanded or dropped in favour of FreeType or some other portable system. The code hasn't been updated in 9 years according to SVN, so I suspect it is dead.

There's also Cairo/Pango/whatever (I really should write a WhateverPlugin someday) that probably need considering but since I know damn-all about them and have very little spare time, somebody will have to explain them to me in words of a short and simple nature.

Gosh, aren't fonts fun?

tim
--
tim Rowledge; tim at rowledge.org; http://www.rowledge.org/tim
Useful random insult:- Has a one-way ticket on the Disoriented Express.




More information about the Squeak-dev mailing list