Bug 57928

Summary: Monospace font display corruption
Product: [Unmaintained] kdelibs Reporter: Stefan Baums <baums>
Component: qtAssignee: kdelibs bugs <kdelibs-bugs>
Status: RESOLVED FIXED    
Severity: normal CC: keithp
Priority: NOR    
Version: 3.1.1   
Target Milestone: ---   
Platform: Debian testing   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Stefan Baums 2003-05-01 02:13:09 UTC
Version:           3.1.1 (using KDE KDE 3.1.1)
Installed from:    Debian testing/unstable Packages
Compiler:          GCC 
OS:          Linux

Using QT / KDE 3.1.1 Debian GNU/Linux testing, the following severe font problem occurs:

When a QT application using a monospace font (tested in Konsole, KEdit, and QTConfig) needs to display text using glyphs that are not contained in the primary font (defined by user-setting), then QT will

1. Incorrectly request a Sans font instead of a Mono font from fontconfig.

2. Force this font to be displayed as some sort of monospace by adding a large whitespace after every single character, in such a way that the space taken up by every single character of the secondary font is much larger than that taken up by a character of the primary font (which latter should be the guideline, really).  In Konsole, this leads to additional display corruption such as overlapping words and glyph fragments scattered around the screen.

I observed this setting Bitstream Vera Sans Mono as default font and entering / viewing Cyrillic text.  QT requested the non-monospace Nimbus Sans L font from fontconfig to display the Cyrillic glyphs.  The same problem occurs when I try to view unusual accented Latin characters such as a with macron, though here I have not determined the exact font that they are being taken from.

See the following screenshots:

   http://staff.washington.edu/baums/gnome.png
   http://staff.washington.edu/baums/kedit.png
   http://staff.washington.edu/baums/konsole-1.png
   http://staff.washington.edu/baums/konsole-2.png

and the following fontconfig debug output:

   http://staff.washington.edu/baums/debug-5.txt

and the following discussion thread on the fontconfig mailing list, determining that the problem does lie with QT:

   http://mail.fontconfig.org/pipermail/fontconfig/2003-April/000363.html

Best regards,
Stefan Baums
Comment 1 Stefan Baums 2003-05-01 03:06:40 UTC
In my concrete example I should have said that QT wrongly requested Sans
(instead of a monospace font) and got Nimbus Sans L.

S.
Comment 2 Keith Packard 2003-05-01 05:36:37 UTC
Konsole ends up asking for the pattern 'bitstream vera sans mono', 'sans'
instead of 'bitstream vera sans mono', 'monospace'.  Characters not present in
'bitstream vera sans mono' are (reasonably enough) fetched from fonts in the
'sans' alias which generally aren't monospaced.  Were KDE to ask for 'monospace'
instead of 'sans', things would work out much better.
Comment 3 Stephan Kulow 2003-05-01 12:06:48 UTC
Subject: Re:  New: Monospace font display corruption

Am Thursday 01 May 2003 02:13 schrieb Stefan Baums:
> Using QT / KDE 3.1.1 Debian GNU/Linux testing, the following severe font
> problem occurs:

The correct address to report Qt bugs is qt-bugs@trolltech.com

Thanks, Stephan

Comment 4 Stefan Baums 2003-05-01 21:51:43 UTC
OK, thanks for pointing that out, I mailed the bug report to
qtbugs@trolltech.com.  May I ask, though, why the KDE bugtracking system does
provide the category "QT", and what it is to be used for?

Cheers,
Stefan
Comment 5 Stefan Baums 2003-05-01 21:57:41 UTC
Oops, "qt-bugs," with a hyphen.  I did mail the report to the right address,
though :-)