> But if each individual backend implements the same API
> why is it more work?

It does not. The Pango low-level API consists of two parts. (1) 
functions that are font backend independent (2) functions that are 
font backend specific. So to get a bitmap from a string you call 
pango_glyph_string(), it gives you the indices, and you call 
pango_ft2_render() with the glyph string, and get the bitmap (the 
names of the functions are probably different, just shooting of the 
top of my head.).

That in itself is not the real problem; I have two main reasons for 
wanting to use the FT2 backend only at this stage. (1) there are no 
backends for Mac, QNX, BeOs and the win32 backend is not, I 
hear, very advanced yet; we would have to implement these; I am 
not prepared to do that, if someone else wants to, is prepared to 
learn about Pango internals and get to grips with text handling on 
platform XY, great. (2) If we use a variety of backends, we will get 
inconsistent behaviour across platforms; this is really is quite a 
serious problem, particularly on win32.

Commiting to the FT2 back end at this stage does not mean we 
will be stuck with it. We will design the functions for drawing the FT 
bitmaps in the XP graphics class, but make them virtual, so that if 
someone wants to later implement different, platform specific 
versions, they will be able to just do so.

Tomas

Reply via email to