[cairo] Re: freetype backend: ignore global advace if required

sunmoon1997 sunmoon1997 at gmail.com
Sat Sep 10 00:07:48 PDT 2005


I think it's a better to let user choose whether ignore global advance
or not, since this will solve some problems. Or cairo can implement a
mechanism that can handle single/dual character widths correctly。

Keith Packard wrote:
> On Mon, 2005-08-22 at 12:52 -0400, Owen Taylor wrote:
> 
> 
>> - How common are fonts that set isFixedPitch but have multiple
>>   character widths?
> 
> 
> Many (most?) CJK fonts have two character widths, and many of these 
> set isFixedPitch. Fontconfig will tell you which fonts have this
> 'feature'.
> 
> 
>> - How common are fonts that have a correct advanceWidthMax but
>>   buggy advances for individual characters?
> 
> 
> This group is full of nominally monospaced fonts (courier, et al) which
> have been extended to support a broader Unicode range. Often, these
> additional characters are of different width than the base font. In
> addition, these fonts are often ammended with zero width characters.
> The trouble here occurs when the maximum width is not the same as the
> nominal width; using the global advance makes things look right for most
> characters.
> 
> 
>>If the second group is much bigger than the first group, then
>>your patch is right ... we should default to not setting
>>the FreeType flag. If the first group is bigger than the second
>>group, the default should go the other way.
> 
> 
> The correct answer is "it depends". If you're using CJK fonts, the first
> group is very common. If you're in terminal emulator land, the second is
> more common.
> 
> Given that few applications need monospaced characters, it's arguably
> better to ignore global advance by default and expect that applications
> will be able to manage varible pitch text correctly.
> 
> -keith
> 
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> cairo mailing list
> cairo at cairographics.org
> http://cairographics.org/cgi-bin/mailman/listinfo/cairo

-------------- next part --------------
A non-text attachment was scrubbed...
Name: cairo-global-advance.diff
Type: text/x-patch
Size: 1133 bytes
Desc: not available
Url : http://lists.freedesktop.org/archives/cairo/attachments/20050910/e452b75d/cairo-global-advance-0001.bin


More information about the cairo mailing list