mike.emmel at gmail.com
Wed Jan 11 21:26:20 PST 2006
On 1/11/06, Gustavo J. A. M. Carneiro <gjc at inescporto.pt> wrote:
> Qua, 2006-01-11 às 08:41 -0800, Bill Spitzak escreveu:
> > It seems that Cairo itself has successfully implemented a large thing
> > (the cairo_t) without using GObject or any "base" library. I see no
> > reason that the text layout cannot do the same thing.
> > What exactly does GObject provide and why is it so hard to remove from
> > Pango?
> glib + gobject is about 850K + basic data structures. Most of this is
> shared between multiple applications. To use pango you don't even have
> to use the glib main loop.
> Incorporating pango into cairo would mean two text layout
> implementations -> bad for fixing bugs, bad for memory usage. You
> probably can't make pango use the cairo text layout api without breaking
> pango api. And pango api cannot be broken, period. And you don't
> honestly expect all the apps using pango to start using a new API for no
> good reason, do you? I mean, for cairo drawing you get lots of new
> features relatively to the gdk/x11 drawing, but from pango to cairo text
> you get nothing in return. Also, we'd need new language bindings (!)
> Without gobject reference counting and enums/flags introspection, things
> become much harder for dynamic languages.
> This whole thread is a really bad idea. I am tired of linux
> development platform always shifting APIs for mediocre reasons.
> Stability counts much more than 850K of shared memory.
Then I would be very surprised if pango fills the role of a companion
text library for cairo. It will have to be something else since there
is a real need for one that can handle some simple cases but also
complex text layout problems if desired. Its a shame you feel this
way I think there are a lot of good things about pango that would be
useful outside of gtk but 850k of code is not needed to solve this
> Gustavo J. A. M. Carneiro
> <gjc at inescporto.pt> <gustavo at users.sourceforge.net>
> The universe is always one step beyond logic.
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.1 (GNU/Linux)
> -----END PGP SIGNATURE-----
More information about the cairo