- From: Kornel Lesiński <kornel@geekhood.net>
- Date: Thu, 17 May 2012 19:23:26 +0100
- To: "Tab Atkins Jr." <jackalmage@gmail.com>
- Cc: whatwg <whatwg@whatwg.org>
On Thu, 17 May 2012 16:05:13 +0100, Tab Atkins Jr. <jackalmage@gmail.com> wrote: >> Necessity to specify 2x scaling all the time will become a bad default >> and a historical quirk (like the DOCTYPE), and a source of annoyance >> where >> accidentally omitted "2x" syntax makes images large and pixelated. > > I think that 2x only looks like a good default now. I would bet that > in less than 10 years 3x or higher will look like a good default. So why is 1x the default when it's obvious that it is not going to be a good default? "If density is still absent, set it to 1.0." http://www.whatwg.org/specs/web-apps/current-work/multipage/embedded-content-1.html#image-candidate-string Note that the scale multiplier can be omitted already when only the size is specified: <img srcset="img 500w"> This is currently a legal syntax for a 1x image, and this is going to be an awful mistake regardless whether we'll have 2x or 3x displays in the future. > I'd rather not bake in a confusing change that doesn't actually > future-proof anything. I think it's a safe bet that 3x won't ever be a good default. Authors will need to translate between CSS and image pixel sizes, and it's much easier to multiply and divide by 2 than 3. Keep in mind that scaling factor is not tied too much to actual display DPI/perceived pixel size. When new denser displays come along, we won't jump from 2x to 3x, rather the 2x will change its meaning. This is exactly what happened with pixel size at 1x — it has shrunk over the years from 72dpi (SVGA 14") to 108dpi (iMac 27") and 130dpi on laptops. Assuming same viewing distances, that's a hefty 1.5-1.8x increase in resolution! When resolution of current desktops doubles we'll start at around 200dpi, and the pixel size will likely continue to shrink gradually over time as displays get less-than-full-multiplier increases in density. If such 1.5-1.8 increase happens again, the meaning of "2x" will end up being in the 300-360dpi range for desktop viewing distances. That will be much better than 264dpi on the "Retina" iPad today (even better considering iPad's smaller viewing distance). Those pixels will be much smaller than average human can see — I think that's perfectly adequate for a default! Further improvements over this would have diminishing results — once pixels are indistinguishable it won't make sense to make them more indistinguishable, so there will be very little reason to use 3x, 4x factors. But let's say I'm wrong and 3x will end up being the ultimate scaling factor: - when authors specify the 3x scaling factor explicitly, it'll all work fine regardless of the default. - if the we don't change the default, then failing to specify the 3x scale factor will give very wrong result — a 1x image. - if we change the default to 2x, then failing to specify the 3x scale factor will give less wrong result — a 2x image. Only if we change the default to 3x now, before srcset ships we will avoid the problem entirely. But as I've explained above, it's an inconvenient scaling factor and is likely to overshoot required quality, so 2x is a safer bet. But why oh why should we keep 1x as the default if it's going to be the worst default in any case? -- regards, Kornel Lesiński
Received on Thursday, 17 May 2012 18:24:01 UTC