Closed Bug 670072 Opened 13 years ago Closed 13 years ago

Font sizes smaller than 0.5px are not painted correctly under GDI

Categories

(Core :: Layout: Text and Fonts, defect, P3)

All
Other
defect

Tracking

()

RESOLVED FIXED

People

(Reporter: Rdragos18, Assigned: jfkthame)

References

(Blocks 1 open bug, )

Details

(Keywords: testcase)

Attachments

(3 files)

User Agent: Mozilla/5.0 (Windows NT 5.1; rv:5.0) Gecko/20100101 Firefox/5.0
Build ID: 20110615151330

Steps to reproduce:

Nothing. Just used the browser.


Actual results:

When i use font-size: 1% on a text. it looks all messed up.


Expected results:

When i use font-size: 1% on a text. it should be invisible. Nothing to see...
Please fix the bug. its annoying as i cant hide text, to add keywords
There is a lot of text on that page and I don't see any obvious problems. Would you attach a screenshot highlighting the problem text.
Attached file Testcase
Extracted from the forums.mozillazine.org post
The testcase works as expected on Linux, but not on Windows 7.
Maybe it's just that 1% rounds to zero on Linux but not on Windows.

Radulescu, why don't you simply use font-size:0 if that's what you want?
Keywords: testcase
@Mats,

i am getting that issue on my phpbb board, as well as the phpbb 3.0.8 software itself. If i use [size=0]INVISIBLE TEXT[/size] The BBCode wont get Parsed. Even so, i wish to go by their software, and get the Firefox issue fixed.
I don't see any text in Mozilla/5.0 (Windows NT 6.1; WOW64; rv:8.0a1) Gecko/20110708 Firefox/8.0a1

Graphics
Adapter Description NVIDIA GeForce GT 240M
Vendor ID 10de
Device ID 0a34
Adapter RAM 1024
Adapter Drivers nvd3dumx,nvwgf2umx,nvwgf2umx nvd3dum,nvwgf2um,nvwgf2umDriver Version8.17.12.7061
Driver Date 4-7-2011
Direct2D Enabled true
DirectWrite Enabled true (6.1.7601.17563)
ClearType Parameters DISPLAY1 [ Gamma: 2200 Pixel Structure: RGB ClearType Level: 100 Enhanced Contrast: 400 ] DISPLAY2 [ Gamma: 2200 Pixel Structure: RGB ClearType Level: 50 Enhanced Contrast: 200 ] 
WebGL Renderer Google Inc. -- ANGLE -- OpenGL ES 2.0 (ANGLE 0.0.0.686)
GPU Accelerated Windows 1/1 Direct3D 10
I do on Firefox 5
Mozilla/5.0 (Windows NT 5.1; rv:5.0) Gecko/20100101 Firefox/5.0
Please provide the graphics info from about:support. The testcase works for me in Firefox 5 as well.
Hello Kevin, thanks for this. Didnt knew about that address


Graphics
Adapter: DescriptionATI Radeon HD 2400 Series AGP
Vendor: ID1002
Device: ID94c4
Adapter: RAMUnknown
Adapter: Driversati2dvag
Driver: Version8.501.0.0
Driver: Date6-2-2008
Direct2D Enabled: Blocked on your graphics driver. Try updating your graphics driver to version 10.6 or newer.
DirectWrite Enabled: false (0.0.0.0, font cache n/a)
WebGL Renderer:(WebGL unavailable)
GPU Accelerated Windows: 0/1
Try installing the latest Video drivers from AMD http://sites.amd.com/us/game/downloads/Pages/radeon_xp-32.aspx
TheIssue wasnt existing on the old 3.6.X
Can it be that my video driver isnt compatible with the browser?

Ill install the Driver, hope it wont cause trouble.
Just installed that, and the bug persists. its just a FF5 Issue imo
My Graphics details didnt changed at all between.
Well this is it, none replys?
Component: General → Layout: Text
Product: Firefox → Core
QA Contact: general → layout.fonts-and-text
Please attach a screenshot showing the problem you see (as requested in comment #2).

I notice that in the "Testcase" here (from comment #4), the "INVISIBLE TEXT" shows up perfectly readably in Safari on OS X (it looks like I'm getting 9pt Times Roman). In Firefox on OS X, it shows up as a few tiny black dots along the baseline - which is roughly what I'd expect "very very small" text to look like.

So it seems that this method of "hiding" text is not at all reliable across various browsers and systems - and I don't see why it should be. Small text is not the same thing as invisible text! Surely there are better methods available in CSS.
"it shows up as a few tiny black dots along the baseline - which is roughly what I'd expect "very very small" text to look like."

Yes, thats what it dos. I know it is not the same thing, but it was working perfectly on Firefox 3.6.X So it looks to me like a BUG !

I have just tested into IE8 And it shows very tiny text thats not disturbing. while this bug of FF Is...

If its small it should look small. not all messed up with the text lover, that gets highlighted. This method is fine with me. it just needs to be turn back to how it interpreted it on 3.6.X :D

cant figure out how to add the attachment ... heres the image

http://i44.servimg.com/u/f44/13/84/94/71/bug10.png
OK, it appears that under GDI, we've got a bug where the glyphs are painted much too big in this case, although they are spaced as if tiny (so they almost completely overprint each other).

This doesn't happen when hardware acceleration is enabled and we're using the DirectWrite+D2D backend.

The GDI issue does look like a regression, and we should try to fix it. Sizes smaller than 0.5px show the problem - probably because we round the font size to an integer number of pixels, getting zero, and then don't handle that correctly.

However, I still believe this is bad practice on the part of the site author. Aside from the fact that some browsers may display the "tiny" text much more visibly than you want (e.g. Safari, as noted in comment #16), there are other problems as well. What if the user has poor eyesight and has set a large minimum font size in the browser prefs? What if the user is blind and using a screen-reader? This is NOT a good way to "hide" text.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Summary: Firefox not interpreting well font-size: 1% → Font sizes smaller than 0.5px are not painted correctly under GDI
For the record, our minimum font size pref does not apply to fonts whose size is zero (but it does apply when they're very small).
Whats GDI?
How do i turn on Hardware Acceleration?

I dont care if the text is showing to be a bit smaller, we are discussing about the bug, not about how the user uses CSS.

The site is dedicated to a Game, and it will hardly get any of those, kind of blind peoples. And about the bad eye sight, im not great with it myself. but that dosnt matter.

Lets fix the bug and not talk about how we use that property :P

OH, And by the way, ive noticed that Firefox 4/5 has removed the Dotted border from it. Why? it is annoying as we use to hightlight links that way.
I have to use a alternative from the stylish addon in order to re add the border :(
I've confirmed the bug, and that it's something we should fix.

Meanwhile, you could avoid the issue by using more appropriate means to hide text (how about "display:none", for example?). Or if you insist on just making the text small rather than hiding it completely, even though this will give inconsistent results, you could use "font-size:1px".
Thank You Jonathan.

Nahh.. im not so crazy on hiding it for good, i might remove this things from a few posts. Adding display:none would require a new BBCode and i dont wish to add any more. I Just want it smaller :)

I do use font-size: 1%; as it was into the original title i gave.. read the topic from mozillazine.

I need to use font-size: 4%; to show the text small. if i use things under that, it gets the text all messed up >,<

Could you answer the question about the dotter border around links? or do i have to submit a separate bugreport/ticket
(In reply to comment #22)
> I do use font-size: 1%; as it was into the original title i gave.. read the
> topic from mozillazine.
> 
> I need to use font-size: 4%; to show the text small. if i use things under
> that, it gets the text all messed up >,<

Why not simply use font-size:1px rather than a percentage (which means you'd need to figure out different values depending on the context where you use it).
 
> Could you answer the question about the dotter border around links? 

I assume that's a change in the browser's default styling, or perhaps a theme you're using. If you want to ensure links have borders, you should specify them in your CSS.

See also http://support.mozilla.com/en-US/questions/818975.
phpbb's font BBCode uses percentage, and not px :|
Im not sure about the change.
What theme are do you mean? im using FF's default theme.
They are specifyed in my css. i cant see the dotted border on EVERY SITES :(

Ive talked about this into this topic
http://forums.mozillazine.org/viewtopic.php?f=38&t=2216867
This resolves the problem with incorrect rendering of sizes < 0.5px, as they round to zero, which we then handle OK.
Assignee: nobody → jfkthame
Attachment #545482 - Flags: review?(jdaggett)
Version: 5 Branch → Trunk
Sorry, but what do i do with that?
Is it just the code change for the next FF Versions, or do i have to edit some FF File in order to fix that?

Im not sure whats the code for...
It's a proposed patch for the source code; if it's reviewed and accepted, it will go into a future release and should fix the problem with tiny font sizes displaying incorrectly (they'll just disappear instead, as happened on older versions).

Until then, I think your best option is to use a different method for "hiding" text (as already suggested), or ensure that you use a minimum size of at least 0.5px for "very small but not completely invisible" text.
AWESOME !!! :D
Im more interested into fixing Mozilla's Bug, rather than hiding my text.
I just though and said to use font-size: 4%; to fix the issue.

Thank You for your help with this, and for your lastfast reply.
Would it be possible to have a look on the dotted border issue also?
> Would it be possible to have a look on the dotted border issue also?

We handle one issue per bug report only (for tracking purposes), so please
file a separate bug.
Ok, thank you. I Will do that after i take a nap.
Attachment #545482 - Flags: review?(jdaggett) → review+
http://hg.mozilla.org/mozilla-central/rev/eb3a8761eac6
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
Hello, so was this approved into the next release?
Which will be the next release?
By the way, i have submited a new bug report. Could you review it please?

https://bugzilla.mozilla.org/show_bug.cgi?id=671850
(In reply to comment #33)
> Hello, so was this approved into the next release?
> Which will be the next release?

This fix just landed on mozilla-central, which means it should appear in Nightly builds starting from tomorrow, and then later in Aurora, Beta and Release channels, following the standard release schedule.

> By the way, i have submited a new bug report. Could you review it please?
> 
> https://bugzilla.mozilla.org/show_bug.cgi?id=671850

That's not an area I know anything about; I'm sure someone will look at it in due course.
Awesome !!!! :D
Im happy to be amomghst the ones that have contributed a bit, by improving Firefox ! :-)

Im not sure what you mean by nightly builds, and im not sure what aurora is. i think Firefox is under that name as phpbb3 is called olympus.

If its not too much, could you please let me know when this fix will be added?
(In reply to comment #35)
> Awesome !!!! :D
> Im happy to be amomghst the ones that have contributed a bit, by improving
> Firefox ! :-)
> 
> Im not sure what you mean by nightly builds, and im not sure what aurora is.
> i think Firefox is under that name as phpbb3 is called olympus.
> 
> If its not too much, could you please let me know when this fix will be
> added?

Firefox nightly builds https://nightly.mozilla.org/
Firefox aurora https://www.mozilla.com/en-US/firefox/channel/

FYI, Mozilla Firefox: Development Specifics http://mozilla.github.com/process-releases/draft/development_specifics/
Bud, You said that this will be fixed into the next releases.
I Have tried 5.0.1 and now, 6.0 ..... The bug still persists !! -_-"
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
It will be fixed in Firefox 8.
Status: REOPENED → RESOLVED
Closed: 13 years ago13 years ago
Resolution: --- → FIXED
Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:8.0a1) Gecko/20110815 Firefox/8.0a1
Status: RESOLVED → VERIFIED
Allright. Thanks. Should have said that from the start :P
Depends on: 691581
While looking into bug 691581, I found that although this bug is fixed for GDI rendering on Win7, it is not completely fixed under WinXP - tiny font sizes can still generate incorrect "garbage" on screen there. Results also vary depending whether the harfbuzz shaping path is used or not.

Re-opening for further investigation; apparently needs an additional fix for XP.
Status: VERIFIED → REOPENED
Resolution: FIXED → ---
Thank you for re-opening it Jonathan. 
I thought it is going to get fixed in FF8 though..
Cant wait to finally see it working. I may even consider upgrading to Win7 as i got a new pc that supports it. Seems that u support better the New OSs
You guys are really annoying... You said it will be fixed in Firefox 8. I have upgraded to that and the issue still persists.
I have just installed Windows7 Ultimate and the issue is not present there. Its just that i see it on Windows XP SP2
Blocks: 693143
The fix for this is causing a top crasher, bug 693143.  If we can't resolve that easily, I think the fix here should be backed out.
I'm not sure what you are saying. The bug persists in XP SP2, on Win7 its not showing.
Blocks: 708162
(In reply to Radulescu Dragos-Valentin from comment #46)
> I'm not sure what you are saying. The bug persists in XP SP2, on Win7 its
> not showing.

If you could, please confirm with the latest nightly, you shouldn't see drawing artifacts on either XP or Win7.
The fix for bug 693143 resolves the problem on XP.

Tested with:
Mozilla/5.0 (Windows NT 5.1; rv:11.0a1) Gecko/20111208 Firefox/11.0a1
Status: REOPENED → RESOLVED
Closed: 13 years ago13 years ago
Resolution: --- → FIXED
Sadly i dont use Win XP now, and i cannot confirm if the fix has worked. hope it did :)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: