Re: Xft and Xrender support for GTK+ 1.2.8
- From: Owen Taylor <otaylor redhat com>
- To: gtk-devel-list gnome org
- Subject: Re: Xft and Xrender support for GTK+ 1.2.8
- Date: 22 Jan 2001 11:23:36 -0500
"Bryan O'Sullivan" <bos serpentine com> writes:
> Hello, world -
>
> I spent a few hours tonight hacking together preliminary support for
> Keith Packard's Xrender extension and Xft anti-aliased font code,
> which come with XFree 4.0.2.
Well, I'd be happy to see such a patch exist, though I think there
are some significant challenges that will probably keep it from
being incorporated into an official GTK+ release
- Xft is still in flux.
- Internationalization is a large amount of work (close to impossible)
because GTK+-1.2 uses Xlib's fontset/output-method mechanism.
- GTK+-1.2 programs are closely tied to the X font model - there
is no abstraction layer between X fonts and GTK+ fonts.
Also, as Havoc said, other people have been working on this for a
while, so you should pool efforts.
> The code is grafted on top of GTK+ 1.2.8, since I wanted to see
> whether I could get something up and running with minimal effort,
> independent of the work I understand Owen Taylor is doing on Pango for
> some distant release. Between midnight and 4am this morning, I got at
^^^^^^^
Hopefully not _too_ distant.
> least a few simple apps working.
>
> Prepatch and obligatory screenshot are at
> http://www.speakeasy.org/~bos
>
> The prepatch has a number of shortcomings and bugs, some of which will
> be obvious to any reader, and others which will only be clear to Keith
> Packard, since I'm depending on the documentation and examples he
> dropped into XFree 4.0.2 :-)
Hmm, a few trivial notes:
- You'll need to handle clipping; you'll need to store the clip
Region with the GdkGC and set the clip on each XftDraw before each
call to draw a string.
- You really don't want to call XQueryColor for each draw-string
request; that's a round-trip to the server.
You can probably steal the implementation of gdk_colormap_query_color()
from the GTK+-1.3 sources - it avoids calling XQueryColor()
in all the common cases.
But, I think the hard part is how you are going to handle naming -
fonts in GTK+-1.2 are identified by XLFDs, and if you expect
to work with any existing GTK+ programs, you'll have to do that.
Either, you can make up XLFDs from the results of XftListFonts
Or, a hack that I remember Keith Packard mentioning using in one
of his patches - he simply put the truetype fonts in his font
path, let the program use XListFonts as before, and then when
a request to load a font was made, looked to see if there was
a truetype font that corresponds.
Regards,
Owen
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]