すべての要素はページ外の人生を持つことができます。作成することができ、必要に応じて使用し、GCを後でクリーンアップすることができます。
オフスクリーンキャンバスを使用して画像を拡大縮小する例です。
// Returns a new Image at size width, height
function resizeImage(image, width, height){
const canvas = document.createElement("canvas"); // create a canvas element
canvas.width = width; // set its width and height
canvas.height = height;
// Draw the image scaled onto it
canvas.getContext("2d").drawImage(image,0,0,width,height);
// Create a new image element
const scaledImage = new Image;
// Set its src to the canvas content
scaledImage.src = canvas.toDataURL(); // default mime type image/png
// Return the new scaled image.
return scaledImage; // note Image may no have loaded at this point
// The canvas is dereferences and will be cleaned up by GC very soon.
// nobody will ever know it existed ;|
}
はme.Iのための選択肢ではありませんでした実際には、あなたの唯一のオプションです –
@NilanjanRoy私の質問を編集した... – K3N
getImageDataは()私の優先順位ではありません、それはバージョンをスケールアップを取得することが可能です場合..私は求めていました描画されたキャンバスのdataurlとして。私の主な目標は、透明なpngを取得することです。私は好みがありません。しかし、キャンバス解像度を出力解像度に設定することはできません! –