Created attachment 110120 [details] Font Rendering differences across size We have a large canvas that is intended to draw text and images, and scale between different sizes. This works fine for most rendering engines (including GTK+ WebKit, Chromium/Chrome port of WebKit and Safari itself), however QTWebKit has an issue when the font-sizes we render get too large. On the same machine, when rendering TheanoModern between QtWebKit and Chrome, QtWebKit exhibits the attached issue where certain characters (containing curves) are rendered incorrectly. As shown in the attachment 'qtwebkitbug.png' you can see the text when rendered at 69px (Scaled up from 30 at a factor of 2.3) which is correct, however bumping up the scale to 2.5 (81px) and above always exhibits this issue. As mentioned before, QtWebKit is the only WebKit port that displays this issue, and it is only on RH/Arch based linuxes which makes me believe it may be a Free/TrueType library that is not installed, thus forcing Qt to use it's own renderer rather than an external library. I have ensured that the FreeType libraries are up to date on all machines to no avail, perhaps there is another library that may need installing. The font TheanoModern is available here for testing - http://www.fontsquirrel.com/fonts/Theano-Modern Affected systems: Fedora 15 - Linux 2.6.38.6-2.rc1.fc15.x86_64 #1 SMP x86_64 Red Hat Enterprise Linux 5 - Linux 2.6.18-194.17.1.el5 #1 SMP x86_64 Arch Linux - Linux Kernel 3.0, x86_64, unknown full kernel string at this time. Unaffected (Confirmed) systems: Ubuntu 10.10 x86_64, Ubuntu 11.04 i386, Mac OSX 10.6
Created attachment 110138 [details] Test Case with TheanoModern at different font sizes This test case renders the font at 50px (correct), 65px, 90px and 130px on a canvas element to demonstrate the inconsistency. There is a delay of 1.5s whilst the font loads so as to not add detection code and keep file size down.
Created attachment 110139 [details] Test Case with TheanoModern at different sizes (Canvas / CSS) Updated Test Case to also demonstrate that CSS Rendering (ie. not on a canvas) is also affected above 60px. Font contained within div elements with sizes 50px, 60px, 70px, 80px and 90px.
An older version of qtwebkit was being used when testing on Ubuntu. After upgrading to latest QtWebkit on Ubuntu the issue is now present on Ubuntu also, this has to be an issue specific to the latest builds of QtWebKit.
=== Bulk closing of Qt bugs === If you believe that this bug report is still relevant for a non-Qt port of webkit.org, please re-open it and remove [Qt] from the summary. If you believe that this is still an important QtWebKit bug, please fill a new report at https://bugreports.qt-project.org and add a link to this issue. See http://qt-project.org/wiki/ReportingBugsInQt for additional guidelines.