Merge pull request #12538 from tschaub/lazy-doc
Avoid creating context until needed
This commit is contained in:
@@ -24,7 +24,8 @@ try {
|
|||||||
hasImageData = false;
|
hasImageData = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
const context = document.createElement('canvas').getContext('2d');
|
/** @type {CanvasRenderingContext2D} */
|
||||||
|
let context;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param {Uint8ClampedArray} data Image data.
|
* @param {Uint8ClampedArray} data Image data.
|
||||||
@@ -35,11 +36,14 @@ const context = document.createElement('canvas').getContext('2d');
|
|||||||
export function newImageData(data, width, height) {
|
export function newImageData(data, width, height) {
|
||||||
if (hasImageData) {
|
if (hasImageData) {
|
||||||
return new ImageData(data, width, height);
|
return new ImageData(data, width, height);
|
||||||
} else {
|
|
||||||
const imageData = context.createImageData(width, height);
|
|
||||||
imageData.data.set(data);
|
|
||||||
return imageData;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!context) {
|
||||||
|
context = document.createElement('canvas').getContext('2d');
|
||||||
|
}
|
||||||
|
const imageData = context.createImageData(width, height);
|
||||||
|
imageData.data.set(data);
|
||||||
|
return imageData;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* istanbul ignore next */
|
/* istanbul ignore next */
|
||||||
|
|||||||
Reference in New Issue
Block a user