ImageDecoder()

Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.

Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The ImageDecoder() constructor creates a new ImageDecoder object which unpacks and decodes image data.

Syntax

new ImageDecoder(init)

Parameters

init

An object containing the following members:

type

A string containing the MIME type of the image file to be decoded.

data

An ArrayBuffer, a TypedArray, a DataView, or a ReadableStream of bytes representing an encoded image type as described by type.

premultiplyAlpha Optional

Specifies whether the decoded image's color channels should be premultiplied by the alpha channel. If not provided set as "default":

  • "none"
  • "premultiply"
  • "default"
colorSpaceConversion Optional

Specifies whether the image should be decoded using color space conversion. If not provided set as "default". The value "default" indicates that implementation-specific behavior is used:

  • "none"
  • "default"
desiredWidth Optional

An integer indicating the desired width for the decoded output. Has no effect unless the image codec supports variable resolution decoding.

desiredHeight Optional

An integer indicating the desired height for the decoded output. Has no effect unless the image codec supports variable resolution decoding.

preferAnimation Optional

A Boolean indicating whether the initial track selection should prefer an animated track.

Examples

The following example creates a new ImageDecoder with the required options.

let init = {
  type: "image/png",
  data: imageByteStream
};

let imageDecoder = new ImageDecoder(init);

Specifications

Specification
WebCodecs
# dom-imagedecoder-imagedecoder

Browser compatibility

BCD tables only load in the browser