<dt>If <var title="">input</var> is a <code><a href=#imagedata>ImageData</a></code> object</dt>
<dd><p>Let <var title="">output</var> be a newly constructed <code><a href=#imagedata>ImageData</a></code> object
with the same <code title=dom-imagedata-width><a href=#dom-imagedata-width>width</a></code> and
<code title=dom-imagedata-height><a href=#dom-imagedata-height>height</a></code> as <var title="">input</var>, and with a newly constructed
<code><a href=#canvaspixelarray>CanvasPixelArray</a></code> for its <code title=dom-imagedata-data><a href=#dom-imagedata-data>data</a></code> attribute, with the same
<code title=dom-canvaspixelarray-length><a href=#dom-canvaspixelarray-length>length</a></code> and pixel
values as the <var title="">input</var>'s.</dd>
<dt>If <var title="">input</var> is a <code><a href=#file>File</a></code> object</dt>
<dd><p>Let <var title="">output</var> be a newly constructed <code><a href=#file>File</a></code> object corresponding to the same underlying data.</dd>
interface <dfn id=imagedata>ImageData</dfn> {
readonly attribute unsigned long <a href=#dom-imagedata-width title=dom-imagedata-width>width</a>;
readonly attribute unsigned long <a href=#dom-imagedata-height title=dom-imagedata-height>height</a>;
<dt>If <var title="">input</var> is a <code><a href=#imagedata>ImageData</a></code> object</dt>
<dd><p>Let <var title="">output</var> be a newly constructed <code><a href=#imagedata>ImageData</a></code> object
with the same <code title=dom-imagedata-width><a href=#dom-imagedata-width>width</a></code> and
<code title=dom-imagedata-height><a href=#dom-imagedata-height>height</a></code> as <var title="">input</var>, and with a newly constructed
<code><a href=#canvaspixelarray>CanvasPixelArray</a></code> for its <code title=dom-imagedata-data><a href=#dom-imagedata-data>data</a></code> attribute, with the same
<code title=dom-canvaspixelarray-length><a href=#dom-canvaspixelarray-length>length</a></code> and pixel
values as the <var title="">input</var>'s.</dd>
<dt>If <var title="">input</var> is a <code><a href=#file>File</a></code> object</dt>
<dd><p>Let <var title="">output</var> be a newly constructed <code><a href=#file>File</a></code> object corresponding to the same underlying data.</dd>
interface <dfn id=imagedata>ImageData</dfn> {
readonly attribute unsigned long <a href=#dom-imagedata-width title=dom-imagedata-width>width</a>;
readonly attribute unsigned long <a href=#dom-imagedata-height title=dom-imagedata-height>height</a>;