Re: Scaled fixed size fonts

Behdad Esfahbod <[email protected]>
Newsgroups gmane.comp.lib.cairo
Message-ID <[email protected]>
Hi,

Your message is a bit vague in details.  Do you have a simple test case?

behdad

On 14-01-06 03:48 AM, Fred Kiefer wrote:
> In the GNUstep project we use cairo as our default drawing backend. One
> user complained that with cairo some fonts get displayed worse than with
> the direct xlib based backend. It turns out that on this computer only
> the Adobe fonts are installed and this are fixed size fonts.
> I investigated a bit in our code and later in the cairo code and this
> burns down to the function cairo_scaled_font_create() returning not the
> best suited fixed size font, but a scaled version of the standard 12
> point font.
> 
> The reason is that _cairo_ft_font_face_get_implementation() in
> cairo-ft-font.c reuses the same resolved font even when the font isn't
> scalable and the matrix did change. My suggestion now is to extend the
> tests in this function to first inspect the pattern whether it is
> scalable. If it isn't, compare the pixel size of the cached resolved
> font with the new pixel size (This code needs to be extracted from
> _cairo_ft_resolve_pattern) and if that doesn't match within certain
> limits (which might be the hard bit to define) the old resolved font
> gets thrown away and replaced by a newly created one. Or we leave the
> cached one alone and just create a new one?
> 
> This solution will use up more resource than the current one and if
> there is no better matching fixed pixel font it will result in the same
> display with a lot more overhead. Still for some cases it will result in
> better drawn fonts. And for the most common case where scalable fonts
> get used it will be almost no overhead.
> 
> Would cairo be willing to accept a patch in this direction? I am willing
> to write on, but only if this effort isn't completely wasted.
> 
> Fred
> 

-- 
behdad
http://behdad.org/
-- 
cairo mailing list
[email protected]
http://lists.cairographics.org/mailman/listinfo/cairo
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.