[Konsole-devel] [Bug 52538] console font displays double width
alan at chandlerfamily.org.uk
alan at chandlerfamily.org.uk
Tue Feb 18 20:11:34 UTC 2003
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
http://bugs.kde.org/show_bug.cgi?id=52538
------- Additional Comments From alan at chandlerfamily.org.uk 2003-02-18 21:11 -------
I think I now know at least one part of the problem related to this bug. The first part of
the problem is that a request to display the "console" font confuses Xft/fontconfig -
because it can't find a match against that family name. It instead uses the Style Hint
given it by qt to locate the nearest font (which will depend on the fontconfig
configuration). Before qt caches the font - it asks xft for it - which asks fontconfig which
looks for it in the fonts.cache-1 file in the appropriate directory. It does not find console
(but instead the name is console8x16.pcf)
This is because when fontconfig creates the font.cache-1 file in each of the font
directories it asks freetype to look up the font from the font filename at give it its
parameters. Due to a bug in freetype 2.1.3 (fixed in cvs I am told) the routine that
decompresses compressed fonts (console is one of these) reports a file format error
against the font file and hence fails to get its parameters into the font cache.
Fontconfig works round the problem by creating the family name from the file name.
However, even with this bug fixed there is still a problem with the console font that
means that freetype doesn't get its name right. I believe THIS IS A BUG in the
console8x16.pcf.gz and console8x8.pcf.gz files distributed with KDE.
The file has "properties" in it, with a string defining the property type and a string
defining the property value. These fonts use FAMILY as the property type and console
as the property value. I have sampled some other fonts and they have FAMILY_NAME
as this property type. Freetype is only looking for the string FAMILY_NAME. Hence it
reports a null family name when asked and fontconfig therefore writes the filename into
the font.cache-1 file.
(I have asked for pointers to the pcf specification on the freetype mailing list to try and
confirm what I am saving)
More information about the konsole-devel
mailing list