Bug 225040 - The underline of links with special text is longer than it should (line width calculation does not consider font kerning ?)
Summary: The underline of links with special text is longer than it should (line width...
Status: RESOLVED UNMAINTAINED
Alias: None
Product: konqueror
Classification: Applications
Component: khtml (show other bugs)
Version: 4.8.95 (RC1)
Platform: Compiled Sources Linux
: NOR normal
Target Milestone: ---
Assignee: Konqueror Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-01-31 20:49 UTC by Dario Andres
Modified: 2024-05-06 18:39 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
Testcase (82 bytes, text/html)
2010-01-31 20:51 UTC, Dario Andres
Details
Screenshot of the bug (2.81 KB, image/png)
2010-01-31 20:52 UTC, Dario Andres
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Dario Andres 2010-01-31 20:49:40 UTC
Here using:

Qt: 4.6.1 (kde-qt master commit 5ccbae0c2d9254efe67599137afec763d4fec0f6
        Date:   Tue Jan 19 20:42:24 2010 +0100)
KDE Development Platform: 4.4.61 (KDE 4.4.61 (KDE 4.5 >= 20100127))
kdelibs svn rev. 1082077 / kdebase svn rev. 1082077
on ArchLinux i686 - Kernel 2.6.32.3

Testcase HTML:

<a href="#">ToToToToToToToToToToToToToToToToToToToToToToToToToToToToToToToToTo</a>

Bug:
The underline of that link is longer than the text itself. The problem gets bigger if the "To" sequence is bigger.

It could be related to the line width not calculating the font kerning: the "o" are below the "T".
Comment 1 Dario Andres 2010-01-31 20:51:27 UTC
Created attachment 40420 [details]
Testcase
Comment 2 Dario Andres 2010-01-31 20:52:34 UTC
Created attachment 40421 [details]
Screenshot of the bug
Comment 3 Christoph Feck 2010-02-01 16:43:17 UTC
Not only the underline, but the "hit box" is affected, too.
Comment 4 Graeme Hewson 2012-11-13 17:34:34 UTC
See also bug 307824.
Comment 5 Andrea Iacovitti 2012-11-15 10:47:25 UTC
khtml/rendering/font.cpp:317 (Font::width function)
It seems "fast algorithm" does not always return correct string length (that's the case of the reported testcase).
That's is the sum of the single char with (QFontMetrics::width(QChar)) of the string does't always match the length of the string (QFontMetrics::width(QString,..)).
Comment 6 Andrea Iacovitti 2012-11-15 11:08:37 UTC
... and the reason why "fast algorithm" was introduced is stated in comment at the beginning of Font::width function (major speed regression in qt4 compared to qt3)
Comment 7 Christoph Cullmann 2024-05-06 18:39:39 UTC
Dear user,

KHTML (and KJS) was a long time more or less unmaintained and got removed in KF6.

Please migrate to use a QWebEngine based HTML component.

We will do no further fixes or improvements to the KF5 branches of these components beside important security fixes.

For security issues, please see:

https://kde.org/info/security/

Sorry that we did not fix this issue during the life-time of KHTML.

Greetings
Christoph Cullmann