nanogui: Scalable font support ...


Previous by date: 15 Mar 2000 22:03:17 -0000 List archive?, Roberto Alsina
Next by date: 15 Mar 2000 22:03:17 -0000 Re: Scalable font support ..., Greg Haerr
Previous in thread: 15 Mar 2000 22:03:17 -0000 Re: Scalable font support ..., Greg Haerr
Next in thread: 15 Mar 2000 22:03:17 -0000 Re: Scalable font support ..., Greg Haerr

Subject: Re: Scalable font support ...
From: Martin Jolicoeur ####@####.####
Date: 15 Mar 2000 22:03:17 -0000
Message-Id: <38D00625.DD8A13F0@visuaide.com>

Morten Rolland wrote:

>
> Personaly I'd like to see a set of functions that hides all the
> details as much as possible and provides a set of functions
> suitable for the applications no matter what kind of
> font we are using (The new font API should be able to handle the
> old bitmapped fonts as well, for small systems BTW)
>

Agree.
T1lib and freetype should be easily removable from microwindows for those who
don't want them ...


>
> > : void GdFontSetPath(char* path)
> > : FONTID GdFontLoad(char* filename)
> > : void GdFontUnload(FONTID font)
>
> This is a kind of administration that should or could be
> automatic, as a client app don't want to mess around with
> details like path/file-names (think of portability
> between different architectures).  I don't want *my*
> applications to have to do this, at least.
>

How & when would you load font files then ? Through a  "database" text file
mapping IDs, names and font files ?


>
>
> Another: Dynamic loading/unloading will be able to meet
> a given memory usage level, at the expense of speed.
>

I agree. I understand that in your case you can't do that since a web page can
come up with any/many  font faces.
But in my case, I know that I will use, say, only 3 font files in the
application. So I can load these fonts at boot time without any speed cost ...
See ?

>
> Another: When we move to unicode, we will have to use
> several physical font files and a mapping table to handle
> things well (e.g. when we select an underlined italic
> courier font, chinese should still come out as
> chinese, although there may be no font(s) with
> underlined italic monospaced chinese glyphs in it...)
>
> I think it would be much better with centralized
> configuration and a standardized set of font-names.
>

How do you see this ?


>
> The 'SetAngle' function; will it specify slanting of
> individual characters, or rotation for the entire
> rendered string? (I could use all of 90, 180 and 270
> degrees rotation - also handeling anything inbetween
> is acceptable too:-).
>

It rotates the entire string at *any* angle (wih a degree precision) from 0 to
360 deg.
If somebody wants slanting he could add it later when needed ...

>
> > Do each of these routines just store some member in a FONT struct,
> > or do they end up calling a low level font driver?  If they
> > don't call a low level driver, perhaps all these calls could be handled
> > with a single struct, and a single call to GdFontSetCharacteristics...
> > Comments?
>
> For selecting fonts, how about:
>
>    PMWFONT = GdSelectFont("bitstream","Times","bold","italic",16,...);
>
> I can have a talk with the font experts at Opera to discuss what is
> nice and what is not so nice WRT CSS1 on the web.
>
>

With truetype fonts, we could use what is called "the postscript name" embedded
in the file to name the font. But since you abstract the font technology behind
that, what would happen if you have, say, times.ttf AND times.pfb in the font
path and you specify GdSelectFont("Times" ...) ?? Will it choose the truetype
one or the postscript one ? And where would you take the font name if the font
is a bitmap font ?

I'm curious how you would handle font "names/family" instead of font filenames
....

Also, in truetype technology, stuff like bold and italic specify different font
files, not just different font rendering. Ex: times.ttf timesb.ttf, timesi.ttf,
timesbi.ttf respectively for times normal, times bold, times italic, times
bold-italic .... It can't be properties of the same font name ... You have to
change the font file each time... If you don't handle font loading/unloading by
hand in the app. , it could mean a real mess for the middle-layer engine in
managing font filenames, the way you specify it ...

Comments ?

Regards,

Martin Jolicoeur
GVT Project
####@####.####



Previous by date: 15 Mar 2000 22:03:17 -0000 List archive?, Roberto Alsina
Next by date: 15 Mar 2000 22:03:17 -0000 Re: Scalable font support ..., Greg Haerr
Previous in thread: 15 Mar 2000 22:03:17 -0000 Re: Scalable font support ..., Greg Haerr
Next in thread: 15 Mar 2000 22:03:17 -0000 Re: Scalable font support ..., Greg Haerr


Powered by ezmlm-browse 0.20.