W3C home > Mailing lists > Public > whatwg@whatwg.org > March 2012

[whatwg] [canvas] request for {create, get, put}ImageDataHD and ctx.backingStorePixelRatio

From: Charles Pritchard <chuck@jumis.com>
Date: Tue, 20 Mar 2012 12:30:37 -0700
Message-ID: <4F68DADD.7070606@jumis.com>
On 3/20/2012 10:53 AM, Tab Atkins Jr. wrote:
> Given that the modern iPhones (and I suspect the iPad 3, though I
> haven't tested it yet) aren't exposing their high-res backing stores
> (they give back ImageData with CSS px resolution), it seems likely
> that the original goal of get/putImageData to seamlessly adapt has
> failed.  So, I support adding an alternate API that explicitly returns
> a high-res store.  If people fuck*that*  up, then we're just screwed.

IE exposes CSS px resolution via window.screen; mobile exposes via 
devicePixelRatio, webkit exposes accidentally through innerHeight and 
outerHeight and Mozilla through CSS queries on device-pixel-ratio.
I tried to get this mess fixed, but I got a lot of push back from Mozilla.

WebKit developers agreed that the MS solution would be OK:

Anne agreed to add it to CSSOM back when he was editing it, once there 
was a second implementation.

I've got two hacks to get pixel resolution over here:

I didn't add the Mozilla one yet.

I strongly suggest we just fix the problem by updating window.screen so 
us developers can manually manage the CSS width vs independent width.
I've been doing this forever, it works fine [I update on resize events 
if the res has changed]:
<canvas style="width: 50px; height: 50px;" width="100" height="100" />

We already went through this discussion on WHATWG. I didn't like how it 
went back then. Now that we're revisiting it, maybe we can just follow MS.

On desktop, the res changes with browser zoom.

Received on Tuesday, 20 March 2012 12:30:37 UTC

This archive was generated by hypermail 2.4.0 : Wednesday, 22 January 2020 16:59:40 UTC