[whatwg] Proposal: ImageData constructor or factory method with preexisting data

Kenneth Russell kbr at google.com
Tue Mar 12 10:55:07 PDT 2013

I much prefer your suggestion to just add a constructor to ImageData.
I was not sure whether that style was preferred nowadays. ImageData is
already exposed in the global namespace, so making it a callable
constructor function seems like an easy change.

As mentioned in another reply, the intent here is to reference the
Uint8ClampedArray, not make a copy.


On Mon, Mar 11, 2013 at 7:03 PM, Boris Zbarsky <bzbarsky at mit.edu> wrote:
> On 3/11/13 7:28 PM, Kenneth Russell wrote:
>> Proposed IDL:
>> [NoInterfaceObject]
>> interface ImageDataFactories {
>>    ImageData createImageData(Uint8ClampedArray data, double sw, double
>> sh);
>> };
>> Window implements ImageDataFactories;
>> WorkerGlobalScope implements ImageDataFactories;
> How about just:
>   [Constructor(Uint8ClampedArray data, double sw, double sh)]
>   interface ImageData {
>     /* Whatever is currently there */
>   };
> and then you create one with:
>   new ImageData(someData, someWidth, someHeight);
> Other than needing to specify whether the array is copied or held on to by
> reference, and specifying that this interface should be exposed in workers,
> this seems fine to me.
> -Boris

More information about the whatwg mailing list