Rockbox mail archiveSubject: Re: alle: r26008 - trunk/fonts
Re: alle: r26008 - trunk/fonts
From: Jonas Häggqvist <rasher_at_rasher.dk>
Date: Sat, 15 May 2010 03:35:40 +0200
On 14-05-2010 14:00, Paul Louden wrote:
> Is there a way to tell what codepages a Rockbox font supports fully (or
> at least "well enough")? As in, could we require language files to
> include mention of the required codepage(s) to render the menus
> correctly, and reject font loads as the menu font if the font to be
> loaded doesn't match the language file?
I think this would be a good idea, and it's one I've thought of a few
times (I think I've even mentioned it before). Basically it would take a
1) Make langfiles include a list of codepoints used, it could just be an
automatically generated string that is added when compiling the .lng.
2) Make the font loader check that the font to be loaded (for ui) has
these codepoints. I would *think* this can be done fast enough on-the-fly
by simply looking through the font, but otherwise a header-field could be
added (breaking compatibility) to our .fnt files with a list of included
codepoints. It should then produce a continue/abort dialog for the user to
decide whether to go ahead in spite of the missing characters. It could
even include a list of which characters are missing. This check should
only be performed on user-initiated font-switching (through a theme or by
manually changing the font) - e.g. not on boot.
3) Similarly, language loading could do the opposite, and check if the
language to be loaded can be displayed by the currently loaded fonts.
These would make language and user-initiated font-loading slower, but
those are neither something you do all the time, nor are they
time-critical in the slightest and I think it would improve the
user-experience significantly to not risk loading a font/language that
won't display correctly.
-- Jonas Häggqvist rasher(at)rasher(dot)dkReceived on 2010-05-15