Closed Bug 51748 Opened 24 years ago Closed 24 years ago

Fonts specified in pixels are unreadable on hi-res displays.

Categories

(SeaMonkey :: Themes, defect, P4)

x86
All
defect

Tracking

(Not tracked)

VERIFIED DUPLICATE of bug 51346
Future

People

(Reporter: jwbaker, Assigned: hewitt)

References

Details

(4 keywords, Whiteboard: nsbeta3-)

Over the last week, several chrome font specifications have been changed from points or other useful metrics to pixels. Mozilla must not specify font sizes in pixels. For example, the personal toolbar font is now 11px high. This is completely unreadable on my high resolution display. This is a regression because these fonts were formerly specified in sizes such as points and mm, hwich scale properly with display resolution. The change to pixel sizes is a serious problem that needs to stop ASAP. Here is a list of all pixel font sizes in skins: modern/communicator/skin/button.css:12: font : 11px arial; modern/communicator/skin/button.css:233: font-size : 10px; modern/global/skin/menu.css:204: font-size : 9px; modern/navigator/skin/navigator.css:379: font-size : 9px; classic/global/skin/console.css:25: font-size: 12px;
Nominating for beta3 consideration. This is an easy, low-risk fix. We don't want to ship a beta that looks like a bad winamp skin.
Keywords: nsbeta3, regression
Summary: [REGRESSION] Chroms fonts being moved from points to pixels → [REGRESSION] Chrome fonts being moved from points to pixels
Summary: [REGRESSION] Chrome fonts being moved from points to pixels → Fonts specified in pixels are unreadable on hi-res displays.
I agree, this makes those areas of the product useless, even at 100 dpi. rewriting summary, cc german for UE input, ben to get Classic skin fixed.
Please, please, don't go back to mm or pt which cause problems with low logical resolutions. What really is needed here is inheritance of the system-level UI font prefs or a Mozilla-level UI font pref.
Bug 16729 (use CSS system fonts for skins we ship) would fix this (assuming that bug 33313, get CSS system fonts working on gtk, also got fixed).
Depends on: 16729
Depends on: 33313
I usually use a low-res 75dpi setting but I agree that pixels are the wrong unit. I can switch between a low-res and a high-res setting and Mozilla should remain readable. It doesn't. This is yet another loser.
This is only getting more ridiculous. In Linux build 2000-09-13-12, fonts are specified in pixel units in five places in the modern skin: skins/modern/communicator/skin/button.css skins/modern/global/skin/button.css skins/modern/global/skin/global.css skins/modern/global/skin/menu.css skins/modern/global/skin/menulist.css Now tooltips, the personal toolbar, the status bar, and buttons have fonts pointlessly specified in pixel units. CC hewitt due to bogus review on this bad code.
Severity: major → critical
Keywords: access, fonts, newmod, ui
The default system font sizes needs to be used. I use a 74 dpi resolution, and font sizes specified in physical units (e.g. points) are unreadable.
marking nsbeta3- and marking future. We would like very much to make Modern support system fonts and allow for changing the font from a Pref inside the app; sadly there is no time to do either of these.
Assignee: nbhatla → hangas
Whiteboard: nsbeta3-
Target Milestone: --- → Future
You don't need to implement system fonts or prefs. You need only go through the CSS files substituting point sizes for pixel sizes. This solves 99% of the problems, and is a 1-second job for a competent editor.
As stated above, using points (or in, mm, pc or cm) is the *Wrong Way* and causes other issues (bug 17926 to be precise).
Changing the css is not possible. If the fonts can change size then this will break the current implementation of the Modern skin. We do not have time to make every area that has a font scale to the font size. We do plan to do this after N6 is released.
Status: NEW → ASSIGNED
I'm getting rather bored of that argument. Physical units are absolutely THE ONE TRUE correct way to specify type sizes everywhere. The only places that physical units are inappropriate are on broken systems, such as the MacOS which always ass-u-me-s 72 dpi. The correct solution here is to specify the chrome fonts in points. The user should set Mozilla's resolution preference to the right value. On broken systems, Mozilla can translate the specified font size to pixels, and request the font from the system. Permute this for varous platforms. Good Example: MacOS user has a 100 dpi screen, MacOS assumes 72 dpi, and the chrome type is 9 points, or 1/8th inch. The type size should be 12.5 pixels high on that user's display. Mozilla, knowing the deficiencies of the OS, rounds to 12 pixels and requests *either* a 12-pixel or 12-point font from the OS. The resulting type on the screen is in fact 8.640 points, which is reasonably close to the desired size. Bad Example: MacOS user has 100 dpi screen, Unix user has 150 dpi screen, chrome author specifies type at 11 pixels. On the MacOS screen, the type is close to 8 points, but on the Unix screen the type is only 5 points, which is of course completely unreadable. If the chrome author had instead specified 8 points, the type would be 11 pixels high on the Mac, and 17 pixels high on the Unix box, and still readable in both places. Pixels units are WRONG WRONG WRONG.
I have a ~15" monitor set to a resolution of 800x600. In Windows, the default DPI is 96. My monitor has a 74 DPI resolution (I've measured!). *If* the font size is specified in points, it will either look to small for people have set their logical resolution correctly, or too large for all the other (which haven't bothered to change it).
Your argument still sounds bogus to me. If the resolution is set correctly the font will not look "too large", it will be exactly the intended size! Also you fail to quantify "too large" and "too small". If the fonts are in pixel units, they will certainly be rendered at some random, unpredictable size. Finally, if someone has their resolution set incorrectly, there's hardly anything we can do to kludge around that. We aren't trying to hack around people whose proxies and DNS are incorrectly setup, why should we cripple the product for people whose screen resolution is misconfigured?
>I'm getting rather bored of that argument. You still haven't proved it wrong. Argument in the context of theory and the real world: * Two users with identical screens may want to use differently sized fonts. Neither a particular fixed physical length nor a a particular fixed pixel length is good for both of them. Arguments in the context of real world: * Mozilla has no way of querying the hardware for the physical resolution. The correctness of the logical resolution depends on a guess or user input. The concept of "logical resolution" is more difficult to grasp than the concept of setting a font size pref. In reality, Mozilla will run in numerous environments with broken logical resolution values. * Toolbar font sizes are generally at the lower end of the at all readable sizes. Supposing that Mozilla's font sizes are specified in points to be while Mozilla's default guess for logical resolution remains at 96 ppi, the font sizes that will become unreadable with reasonable ppi values (as Karl Ove descrived above and as described in bug 17926). * If the point sizes are chosen to be readable at (eg.) 70 ppi and up, people who have set their logical resolution to 96 ppi will complain about the fonts being too large. Making the UI font sizes user-settable and independent of the logical resolution and the Web content font size pref (either Mozilla-wide or using the system-wide settings) is the right way. Physical units are WRONG, WRONG, WRONG Fixed pixel sizes are wrong Using user-settable sizes is RIGHT, RIGHT, RIGHT
> Physical units are WRONG, WRONG, WRONG > Fixed pixel sizes are wrong > Using user-settable sizes is RIGHT, RIGHT, RIGHT And using system fonts (this includes system font sizes) is right, right, right ...
Adding myself and Paul Hangas to cc
Just an update - we're actually down to bug 55464 (a dependancy of bug 16729) which is the only thing that is preventing modern from being "scalable" - right now we have to use pixels because of the way a few of the wigets work. After that we can switch to the system font, so we won't be specifying the font size in pixels or points, we'll just fall back to the system font.
Is this problem now fixed in the trunk builds, where both Modern and Classic now adopt system fonts?
> Is this problem now fixed in the trunk builds, > where both Modern and Classic now > adopt system fonts? Does Modern also use system fonts? Great! But the answer would still be no, since bug #51346 isn't fixed yet.
Adding dependancy.
Depends on: 51346
Sending to Hewitt.
Assignee: hangas → hewitt
Status: ASSIGNED → NEW
Status: NEW → ASSIGNED
Priority: P3 → P4
Status: ASSIGNED → RESOLVED
Closed: 24 years ago
Resolution: --- → DUPLICATE
dup *** This bug has been marked as a duplicate of 51346 ***
Verified dup
Status: RESOLVED → VERIFIED
Product: Core → SeaMonkey
You need to log in before you can comment on or make changes to this bug.