Resolution indpendence

Steven J Newbury steve at
Fri Jun 27 13:34:31 PDT 2008

On Fri, 2008-06-27 at 20:29 +0100, Glynn Clements wrote:
> Steven J Newbury wrote:
> > > > > (whereas using the physical resolution certainly has caused problems).
> > > > 
> > > > Only because there are bugs, in particular deep GNOME bugs, that were
> > > > hidden (and festered) by forcing 96 dpi some years ago (because if
> > > > windows is doing it, it can't be wrong - oh, wait vista is not doing
> > > > it anymore, so it was a stupid hack after all?)
> > > 
> > > No, even if everything worked as it should, it would still be
> > > problematic. The problems will only go away once 200+ DPI monitors are
> > > the norm. Until then, the pixel grid will continue to matter.
> > > 
> > > If I run my 22" monitor at 1280x1024, I expect to see a physically
> > > enlarged version of the image which I get on a 17" monitor at
> > > 1280x1024, not an illegible approximation to what I would see on the
> > > 22" at 1920x1440.
> > 
> > You are using a strawman argument here.
> Really? Because I'm sure I saw people suggesting that the UI should be
> layed out in physical units, meaning that for a given screen size, the
> amount of space allocated to various UI components would be entirely
> independent of the resolution.
Well, the UI should be sized such as it is usable with whatever defaults
are appropriate for any particular display device.

> > > > > Moreover, ...
> > > > >
> > > > > Ultimately, ...
> > > > 
> > > > That's all excuses to let the problems fester and hope they'll blow up
> > > > on someone else's watch.
> > > 
> > > WHAT problems? The only problems I have had have been by developers
> > > who are absolutely insistent that physical dimensions absolutely MUST
> > > matter to me, in spite of the fact that they don't.
> > 
> > The problems that arise by developers using pixel units where they
> > should be using pt sizes, proportional or physical units.
> Using physical units (which includes point sizes) implies that a
> monitor of a given size will display the same amount of content
> regardless of the resolution.
Yes, I meant pt sizes specifically and physical units generally, I
should have been clearer.
> I'm not sure what you mean by "proportional" units. If you're
> referring to a percentage of the screen dimensions, exactly the same
> problem occurs there.
Yes, this is what I'm getting at.  Although proportion of window
dimensions may be more appropriate for some apps; like web page layout.

You use whatever scaling units are appropriate for the application, but
if you want a desktop that's usable for everybody with any, or multiple
display devices you can't make assumptions about the resoultion,
physical dimensions and viewing distance that having a standard 96dpi
makes.  Other than raster optimization as mentioned below I really don't
understand what the problem is.  It would be simple enough to have a
knob in the UI Control Panel to set a UI scaling factor if you desire a
smaller or larger desktop (UI widgets), while maintaining the ability
for applications to faithfully represent real-world scale where
> > > Even 300dpi laser printers use hinting to align glyph boundaries to
> > > the pixel grid. That may be for quality rather than legibility per se,
> > > but it's still noticable at that resolution, let alone on a 100dpi
> > > monitor.
> > 
> > That's correct they use hinting, in exactly the same way as modern
> > graphics renderers do for computer displays.  Have a look at what
> > freetype/Xft does.  Nobody is suggesting ignoring the pixel grid, it is
> > necessary to be aware of it at the rasterisation level to achieve a high
> > quality output, but this doesn't mean application programmers (or
> > users!) should need be aware of it!
> It's necessary to be aware of it at the level at which the UI is laid
> out. Any UI component which conveys information (text, image) has to
> span enough pixels that the rasterised image is legible. Unless you
> have a particularly high resolution (or poor eyesight), it doesn't
> need any more than that.
Well, that's where I disagree.  Using fixed pixel sizing for UI elements
designed to be usable at low resolutions can make them illegible at higher
resolutions.  Conversely, an icon designed to be legible on a 147dpi display
like my laptop would be unusably large on a 200px x 200px mobile phone!

You can either design an app for a specific system/setup or you can
avoid making the assumptions that prevent portablity.

More information about the xorg mailing list