[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Cairo/Glitz backend woes
From: |
Fred Kiefer |
Subject: |
Re: Cairo/Glitz backend woes |
Date: |
Mon, 23 Jan 2006 21:55:07 +0100 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050921 |
Fred Kiefer wrote:
> Dirk Meyer wrote:
>> Chris B. Vetter wrote:
>>
>>> :1> openapp EasyDiff.app
>>> /usr/libexec/ld-elf.so.1:
>>> /Library/Bundles/libgnustep-cairo-010.bundle/./libgnustep-cairo-010:
>>> Undefined symbol "_cairo_toy_font_face_create"
>>>
>>> Oh well... Looks like this function is defined as static, as I can't
>>> find it in any of cairo's header files.
>> With GNUstep build from ports I get the _cairo_toy_font_face_create problem,
>> even with glitz enabled.
>
> Yes, the current cairo backend code uses two functions not exported by
> cairo. One even no longer present in that form in the cairo library.
> This needs to be sorted out and I would appreciate any help on that.
>>From what I understand the cairo people expect libraries that use cairo
> to apply another level of libraries to use the font interface of cairo.
> This would most likely be pango, but I am still a bit reluctant to link
> pango into GNUstep. The last time I did suggest this (aout five years
> ago) the echo I got for that was not to positive.
> If you see another way to resolve this, please come up with it.
Last week has been a lucky week for this problem. A few days ago
somebody suggested the addition of a function to cairo, which reports
the text extend for a given scaled font plus a string. This time the
discussion about this was rather short and within a few days the code
was even added to the CVS repository. I changed the GNUstep cairo
backend to use this function and while I was add it, I also changed the
font enumeration code to use font config, by borrowing the code for this
from the XFT implementation.
Now for the first time the cairo backend should work with cairo CVS code
directly!
There are still a lot of open problems, text size computation is still
incorrect (scaling missing?), the whole image drawing and therefor
scrolling is totally wrong, but it compiles and some of the drawing
looks OK :-)
Perhaps now somebody is willing to sort out parts of the remaining problems?
Cheers
Fred