g r o t t o 1 1

Peeve Farm
Breeding peeves for show, not just to keep as pets
  Blog \Blôg\, n. [Jrg, fr. Jrg. "Web-log".
     See {Blogger, BlogSpot, LiveJournal}.]
     A stream-of-consciousness Web journal, containing
     links, commentary, and pointless drivel.


On My Blog Menu:

InstaPundit
USS Clueless
James Lileks
Little Green Footballs
As the Apple Turns
Entropicana
Cold Fury
Capitalist Lion
Red Letter Day
Eric S. Raymond
Tal G in Jerusalem
Secular Islam
Aziz Poonawalla
Corsair the Rational Pirate
.clue

« ? Blogging Brians # »





Book Plug:

Buy it and I get
money. I think.
BSD Mall




 10/6/2003 -  10/8/2003
 9/29/2003 -  10/5/2003
 9/22/2003 -  9/28/2003
 9/15/2003 -  9/21/2003
  9/8/2003 -  9/14/2003
  9/1/2003 -   9/7/2003
 8/25/2003 -  8/31/2003
 8/18/2003 -  8/24/2003
 8/11/2003 -  8/17/2003
  8/4/2003 -  8/10/2003
 7/28/2003 -   8/3/2003
 7/21/2003 -  7/27/2003
 7/14/2003 -  7/20/2003
  7/7/2003 -  7/13/2003
 6/30/2003 -   7/6/2003
 6/23/2003 -  6/29/2003
 6/16/2003 -  6/22/2003
  6/9/2003 -  6/15/2003
  6/2/2003 -   6/8/2003
 5/26/2003 -   6/1/2003
 5/19/2003 -  5/25/2003
 5/12/2003 -  5/18/2003
  5/5/2003 -  5/11/2003
 4/28/2003 -   5/4/2003
 4/21/2003 -  4/27/2003
 4/14/2003 -  4/20/2003
  4/7/2003 -  4/13/2003
 3/31/2003 -   4/6/2003
 3/24/2003 -  3/30/2003
 3/17/2003 -  3/23/2003
 3/10/2003 -  3/16/2003
  3/3/2003 -   3/9/2003
 2/24/2003 -   3/2/2003
 2/17/2003 -  2/23/2003
 2/10/2003 -  2/16/2003
  2/3/2003 -   2/9/2003
 1/27/2003 -   2/2/2003
 1/20/2003 -  1/26/2003
 1/13/2003 -  1/19/2003
  1/6/2003 -  1/12/2003
12/30/2002 -   1/5/2003
12/23/2002 - 12/29/2002
12/16/2002 - 12/22/2002
 12/9/2002 - 12/15/2002
 12/2/2002 -  12/8/2002
11/25/2002 -  12/1/2002
11/18/2002 - 11/24/2002
11/11/2002 - 11/17/2002
 11/4/2002 - 11/10/2002
10/28/2002 -  11/3/2002
10/21/2002 - 10/27/2002
10/14/2002 - 10/20/2002
 10/7/2002 - 10/13/2002
 9/30/2002 -  10/6/2002
 9/23/2002 -  9/29/2002
 9/16/2002 -  9/22/2002
  9/9/2002 -  9/15/2002
  9/2/2002 -   9/8/2002
 8/26/2002 -   9/1/2002
 8/19/2002 -  8/25/2002
 8/12/2002 -  8/18/2002
  8/5/2002 -  8/11/2002
 7/29/2002 -   8/4/2002
 7/22/2002 -  7/28/2002
 7/15/2002 -  7/21/2002
  7/8/2002 -  7/14/2002
  7/1/2002 -   7/7/2002
 6/24/2002 -  6/30/2002
 6/17/2002 -  6/23/2002
 6/10/2002 -  6/16/2002
  6/3/2002 -   6/9/2002
 5/27/2002 -   6/2/2002
 5/20/2002 -  5/26/2002
 5/13/2002 -  5/19/2002
  5/6/2002 -  5/12/2002
 4/29/2002 -   5/5/2002
 4/22/2002 -  4/28/2002
 4/15/2002 -  4/21/2002
  4/8/2002 -  4/14/2002
  4/1/2002 -   4/7/2002
 3/25/2002 -  3/31/2002
 3/18/2002 -  3/24/2002
 3/11/2002 -  3/17/2002
  3/4/2002 -  3/10/2002
 2/25/2002 -   3/3/2002
 2/18/2002 -  2/24/2002
 2/11/2002 -  2/17/2002
  2/4/2002 -  2/10/2002
 1/28/2002 -   2/3/2002
 1/21/2002 -  1/27/2002
 1/14/2002 -  1/20/2002
  1/7/2002 -  1/13/2002
12/31/2001 -   1/6/2002
12/24/2001 - 12/30/2001
12/17/2001 - 12/23/2001
Monday, January 14, 2002
20:22 - "Pixel-Perfect": Such a 20th-Century Concept

(top) link
Ever since the release of Mac OS X, there has been a weird, tacit push by Apple-- a stealth paradigm shift-- that feels like it's one of those things that we'll look back at in ten years and hail as either one of the most significant steps in computer design in history, or one of the biggest and most misguided failures. Only time will tell which.

What am I talking about? I'm talking about the death of the concept of "pixel-perfect."


By "pixel-perfect", I mean the idea that a picture or icon should have a single, authoritative size, with specific pixels at precisely defined places in the image, like the example at left. Icon design has traditionally relied very heavily on this concept, especially in the early days when color palettes were limited; an icon designer who could produce pixel-perfect icon art that gave a clear and accurate idea of what the icon represented was at the top of his game.

Similarly, full-size images always had definite pixel sizes. This here image is 647x892 pixels, and that's the size it should display, dagnabbit. Sure, you can scale it to half-size or quarter-size or one-third-size, but scaling algorithms being as CPU-intensive as they are, the output is generally blocky and ugly.

But Mac OS X is tacitly changing all that. The first step was Quartz and its built-in smooth scaling algorithm. This enabled features like the Dock to have real-time scaling of its icons to any arbitrary size as you move your mouse over them, and for icons to be arbitrarily sized in folder windows. You choose the size of your icons by a slider in the View Options pane, but while there are little tick marks to show you various divisions along the slider's length, there are no "notches", or places where the slider will naturally fall or magnetize. Usually you'd assume that a slider moved to the vicinity of the halfway marker should snap exactly to that marker (as with the Balance setting in audio controls), but that doesn't happen in Mac OS X. Why?


It's because Mac OS X doesn't want to perpetuate the idea of display sizes that are bound to the pixel size of an image. Instead, it wants you to pick a size you like, whatever size that might be, and it will conform everything to fit that size as though it were the "authoritative" size. No more having to worry about where each individual pixel goes: with Quartz, in which anti-aliasing is at its historical best, sub-pixel rendering is not only possible like never before, but it is a crucial underlying foundation to how interface elements should behave. Text smoothing now permeates the OS, and tiny labels in icons (as at right) can be shown at much smaller sizes than before, regardless of the actual display resolution.

(It should be noted that at multiples of "authoritative" sizes, like 100% or 50%, or in icons where a clear 32x32 or 16x16 icon has been set with the lines sharpened so as to avoid excessive blurriness as you continuously scale down, there is a perceptible clarifying of the image. Just barely. Stray one percentage's worth from the authoritative size and the smooth scaling kicks in, and the clarity is lost.)

Whoah, now. Hold on here. This all sounds very good in theory-- and no doubt it all sounded great in Apple boardrooms circa 1998-- but how does it work in practice? What kind of resistance is this going to hit?

Well, first of all, people expect their full-size images (photos, Web graphics, random stuff exchanged between friends) to be of a certain pixel size, and they expect them to open and display at that size or be damned. And it's all well and good to have application icons that shrink smoothly down to any size-- not just 16x16 or 32x32, but whatever size you might want-- but we've built up some expectations over the years. We like the feeling of there being a "prescribed" size for displaying things. We like the psychological reassurance of the tactile feedback in sliders with "notches" at likely spots like halfway and one-quarter and 200%. We don't take kindly to a slider that lets us select 51% or 23% without assuming we mean the "obvious" nearby choice. How are we going to overcome this? And should we?

Well, let's look at a couple more things Apple has done with Mac OS X since its release, which help to further the death of "pixel-perfect".

First of all, the built-in Preview application. In 10.1, it stopped displaying images at the pixel-perfect 100% size by default if there was an embedded DPI setting in the image. This meant, since the screen resolution on Macs is 72 DPI and most images have an embedded DPI of 300 or 150, the images would show up shrunk down to 1/3 or less of their expected size. Needless to say, this has caught many users off guard-- myself not least. (And Apple will definitely need to address the counterintuitiveness of this feature in the next release-- have a preference so the user can elect to always open images at the pixel-perfect size, and/or a quick keyboard shortcut to zoom to that size.) So the authoritative size of the picture as displayed on-screen has now been superseded by the embedded print DPI setting, in the interest of displaying the picture on-screen at the same size that it would print out on paper. Which means that, say, 10 years from now, when we have 300 DPI monitors, we'll be able to see the pictures on-screen in all the detail they would have on paper, and at the same size. But in the interim, those "lost" pixels that you don't get to see at 72 DPI... well, they're just extra information. You can see it if you zoom in. Just like everything will be in the future: full of extra information that you'll only be able to see if you zoom in... or if the hardware can handle it. Just imagine: One day you'll have two displays side by side in the same workspace; one a traditional 72-DPI display, and the other a 300-DPI monitor. You can grab an image in the low-res screen and drag it to the high-res screen, and the size of the picture won't change-- but the details and clarity will. It will become as clear as the printed page; all the depth the display can handle will be revealed. It'll be like moving it under a different lens at the optometrist's: "Camera 1... Camera 2." (Ten years ago you could have made the same argument with a monochrome screen and a color screen side by side.) Move the picture back onto the low-res screen, and the details will simply blur again, rather than the picture blowing up to accommodate the pixel-level details that can't be shown at the resolution of the low-res screen. Just because a screen's display resolution doesn't match the embedded DPI settings in a picture doesn't mean the picture's displayed size should be altered to fit the pixels. If you want all the pixels to show at 72 DPI, then set the image's embedded resolution to 72 DPI.

And the second big milestone in this effort is iPhoto. Open up the Preferences and set the double-click action to open the picture in a separate window. Now double-click on a picture. Note that it doesn't show up at 100% pixel-perfect size... but oddly enough, it doesn't look any the worse for wear. Grab the lower-right corner and drag it-- and the picture scales in real-time, with no perceptible loss in quality. Even if you scale it up! Scale-up artifacts only start to appear around 150% or so. Similarly, if you take photos at super-high-res on your 3.2 megapixel camera, and then publish them to the Web, it scales them to a comfortable display size, rather than keeping them at full pixel-perfect size. And the scaling options in the other Sharing features are geared to inches, not pixels. So the message here is that the number of pixels in an image is not important. What's important is how it looks... just like icons in the Finder, you should be able to scale a picture to whatever size you feel like, and it should not punish you for that by applying a crappy chunky scaling algorithm.

Now that we've arrived at (a) the software support in Quartz for this level of anti-aliasing and smooth real-time scaling, and (b) the hardware sophistication to support it, we are ready to ditch "pixel-perfect" image display, at long last. Not that anybody has really seen this coming, though. Did we really want this to happen?


Well, like I said, this is likely enough to be one of those things that seems horrendously obvious in retrospect. Video games have been undergoing this paradigm shift for years now-- instead of pixel-perfect 2D sprites like the ones at left, we now have polygon-mapped characters in 3D space who never appear as the same pixel map twice, depending on their position, distance from the camera, posture, and so on. Games have long ago abandoned the need for anything pixel-perfect. So why not have computers follow suit?

Our expectations will weigh us down as these changes overtake us. We'll still gravitate towards pixel-perfect display sizes for as long as they're available. But sooner or later, display hardware will experience a quantum leap in technological complexity, and we'll have a need to store pictures with much more detail and resolution than we've ever had before. Pixels will become so small as to be irrelevant in and of themselves. What will matter will be how the image appears on the display device you happen to be using-- monitor, paper, digital-ink, whatever. And we won't get there if we stick to the idea that pixel dimensions have any meaning in the long run.

Apple has bit off a big task here: one of the most fundamental shifts in computing paradigms we've ever faced. Probably the reason we've heard no fanfare about it (other than the stock Quartz rah-rah'ing) is that it's really hard to pitch this shift as a "feature", or get people to understand its utility in a quick PR bite. The only way to get people used to it is through a long, slow, immersion training process, like in a hot tub. And at least the trend here is toward encouraging people to use their computers in a Mac-like way: to treat your applications as applications, not icons; to treat your pictures as pictures, not collections of pixels. It's all about the final product, not about the trivial computer details that we should never ourselves have to deal with.

It should also be pointed out here that even though LCD monitors are all the rage, the Mac OS X push toward freedom from pixel-perfectness is occurring in spite of them, rather than because of them. LCDs are horrible for this new paradigm. They display individual pixels much more sharply than CRTs do; we can see the little lines between pixels, we can pick out individual dead pixels on our screens-- on LCDs, you'd think, it's more important than ever to be pixel-perfect. And you'd be right. CRTs by their very nature are much more flexible and arbitrarily scalable than LCDs are. You can switch resolutions to whatever you want in a CRT with no loss of clarity; on an LCD, you're stuck with one built-in resolution, unless you want to force it to do messy interpolation and anti-aliasing to emulate a different resolution (which, itself, is another technique which owes its existence to the modern power of anti-aliasing and smoothing technology). If we had started with LCDs and were now moving toward CRTs, the push to kill pixel-perfect images would make a lot more sense. But Steve Jobs is barreling ahead anyway, with visions of cheap 300 DPI LCD screens dancing in his head. Who knows when they'll reach this backwater planet? IBM has one already, but it's $8000 and powered by a video card that makes nVidia's latest offerings look like 16-color EGA adapters. So it's coming, but it'll be a while.

But to get used to the idea, fire up iPhoto and pop open a few pictures; you'll start to get an idea of just where this is all going.

Back to Top


© Brian Tiemann