Closed Bug 577065 Opened 14 years ago Closed 14 years ago

bitmap font rendering problem on WinXP (overlapping letters)

Categories

(Core :: Graphics, defect)

x86
Windows XP
defect
Not set
normal

Tracking

()

RESOLVED FIXED
Tracking Status
blocking2.0 --- final+

People

(Reporter: ananuti, Assigned: jtd)

References

()

Details

(Keywords: regression, testcase)

Attachments

(6 files, 1 obsolete file)

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:2.0b1) Gecko/20100630 Firefox/4.0b1
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:2.0b1) Gecko/20100630 Firefox/4.0b1

wrong rendering if webpage use MS Sans Serif font. http://www.tfex.co.th/tfex/dailyMarketReport.html

Reproducible: Always
Yes, I agree, this bug https://bugzilla.mozilla.org/show_bug.cgi?id=436788 has returned. I'm uploading simplified testcase... In 1.9.2, in 1.9.3 broken...
Version: unspecified → Trunk
Status: UNCONFIRMED → NEW
Component: General → Graphics
Ever confirmed: true
Keywords: regression, testcase
Product: Firefox → Core
QA Contact: general → thebes
blocking2.0: --- → ?
Summary: MS Sans Serif font rendering problem → MS Sans Serif font rendering problem (overlapping letters)
blocking2.0: ? → final+
John, can you take a look at this once we have a regression window?
Assignee: nobody → jdaggett
Attached file testcase with more broken fonts (obsolete) —
Mozilla/5.0 (Windows; Windows NT 5.1; en-US; rv:2.0b2pre) Gecko/20100719 Minefield/4.0b2pre

Seems all Type 1 Fonts are broken. I see this bug with
 "MS Serif", "Roman", "Small Fonts", "System",
 also "Script" and "Modern".
Attachment #458491 - Attachment mime type: text/xml → text/html
(this is the right one, sorry)
Attachment #458491 - Attachment is obsolete: true
Tested trunk on Windows7, all the testcases look fine.  I suspect this is an XP-only regression related to the fix for bug 561304:

http://hg.mozilla.org/mozilla-central/rev/31c52b96e75e

Checkin date was 6/25.
Mozilla/5.0 (Windows; Windows NT 5.1; en-US; rv:2.0b2pre) Gecko/20100712 Minefield/4.0b2pre (.NET CLR 3.5.30729)
Yup, as suspected...

Rendering fine:
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.3a6pre) Gecko/20100624 Minefield/3.7a6pre (.NET CLR 3.5.30729)

Rendering wankered:
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.3a6pre) Gecko/20100626 Minefield/3.7a6pre (.NET CLR 3.5.30729)
Clearly it's the GDI rendering path that has the problem, Uniscribe looks fine.
Summary: MS Sans Serif font rendering problem (overlapping letters) → bitmap font rendering problem on WinXP (overlapping letters)
The 1.9.2 Windows font code contains this comment:

// GetGlyphIndices is buggy for bitmap and vector fonts, so send them to uniscribe
// Also sent Symbol fonts through Uniscribe as it has special code to deal with them
if (!aFont->GetFontEntry()->IsTrueType() || aFont->GetFontEntry()->mSymbolFont)
    return PR_FALSE;

http://mxr.mozilla.org/mozilla1.9.2/source/gfx/thebes/src/gfxWindowsFonts.cpp#1555

Code to shunt bitmap/vectors fonts to Uniscribe wasn't carried over to the new gfxGDIFont code but since Uniscribe was enabled by default the bug was masked until bug 561304 forced us to use GDI on XP.
Fixes the wacky rendering problems but some fallback problems remain for MS Sans Serif, MS Serif and Courier.
Attachment #458594 - Flags: review?(jfkthame)
Comment on attachment 458594 [details] [diff] [review]
patch, force bitmap fonts to uniscribe path

This looks fine (though all these contortions make me sad - we should be able to just use Uniscribe for all fonts!)
Attachment #458594 - Flags: review?(jfkthame) → review+
Pushed to trunk
http://hg.mozilla.org/mozilla-central/rev/9a81894fc687
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
Depends on: 628091
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: