Font fallback messes up adjacent characters in the same block-level element

RESOLVED DUPLICATE of bug 1286011

Status

()

Firefox
Untriaged
RESOLVED DUPLICATE of bug 1286011
2 years ago
2 years ago

People

(Reporter: chris.branch, Unassigned)

Tracking

49 Branch
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(3 attachments)

(Reporter)

Description

2 years ago
Created attachment 8797630 [details]
Example screen capture

User Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:49.0) Gecko/20100101 Firefox/49.0
Build ID: 20160922113459

Steps to reproduce:

In some cases (not always), a missing glyph will cause adjacent characters to render as if those glyphs are missing as well even if the glyphs are present in the font.  Removing the missing glyphs (or moving them to a new block-level element) magically fixes the other glyphs.  Example HTML below (tested on Windows 7 and Windows 10 with Firefox 49.0.1):

<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta charset="utf-8" />
    <title>Symbol Test Page</title>
</head>
<body>

<div style="font-size:30pt; font-family:'Times New Roman', 'Times', serif;">
&#8746;&#8835;&#8839;&#8836;&#8834;&#8838;&#8712;&#8713;&#8736;&#8711;&#174;&#169;&#8482;&#8719;&#8730;&#8901;&#172;&#8743;&#8744;&#8660;&#8656;&#8657;&#8658;&#8659;&#9674;&#9001;&#63720;&#63721;<br/>

&#8746;&#8835;&#8839;&#8836;&#8834;&#8838;&#8712;&#8713;&#8736;&#8711;&#174;&#169;&#8482;&#8719;&#8730;&#8901;&#172;&#8743;&#8744;&#8660;&#8656;&#8657;&#8658;&#8659;&#9674;&#9001;<br/>&#63720;&#63721;<br/>
</div>

</body>
</html>



Actual results:

See attached screen capture.  The example should render the same symbols on both lines with the only difference being that the second line contains as <br/> before the last two characters on the line.  The presence of <br> magically "fixes" all of the characters that precede the <br>.  Replacing <br> with <span> does not work, but using <span style="display:block"> does work.  So, it seems to be related to characters in the same block-level element.


Expected results:

Both sets of symbols should be identical.

Comment 1

2 years ago
Created attachment 8797869 [details]
1307463.html

Updated

2 years ago
Status: UNCONFIRMED → RESOLVED
Last Resolved: 2 years ago
Resolution: --- → DUPLICATE
Duplicate of bug: 1286011
Chris, could you try this with a newer version (Firefox 50, currently in Beta, or even a Developer Edition or Nightly build) and check whether the problem still occurs there (since the fix in bug 1286011)? Thanks!

Beta (Firefox 50): https://www.mozilla.org/en-US/firefox/channel/#beta
Dev Edition (51):  https://www.mozilla.org/en-US/firefox/channel/#developer
Nightly (52):      https://nightly.mozilla.org/
Flags: needinfo?(chris.branch)
(Reporter)

Comment 4

2 years ago
Created attachment 8798153 [details]
50.0b4.png

I checked with 50.0b4 on Windows 7, and the example HTML renders properly, so it does appear this issue has been fixed.

Note that a few of the characters look a little "jaggy" compared to 49.0.1, but it is showing the proper glyphs consistently for all characters that have glyphs available in the font, so I can live with that.  I've attached an example screen shot: 50.0b4.png
Flags: needinfo?(chris.branch)
OK, thanks for confirming this.

Yes, the rendering in that screenshot is pretty rough, isn't it? Was your previous screenshot from Win7 or Win10? If the glyph rendering has regressed badly -on the same system-, I'd consider that a bug that should be filed and investigated; but if it's a question of two different systems (graphics card, OS version, etc.) then it may simply be a difference between GDI and DirectWrite, for example.
You need to log in before you can comment on or make changes to this bug.