這篇文章將為大家詳細(xì)講解有關(guān)Canvas與Image怎么實(shí)現(xiàn)互相轉(zhuǎn)換,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。
轉(zhuǎn)換 Image為 Canvas
要把圖片轉(zhuǎn)換為Canvas(畫(huà)板,畫(huà)布),可以使用canvas元素 context 的drawImage方法:
代碼如下:
// 把image 轉(zhuǎn)換為 canvas對(duì)象
function convertImageToCanvas(image) {
// 創(chuàng)建canvas DOM元素,并設(shè)置其寬高和圖片一樣
var canvas = document.createElement("canvas");
canvas.width = image.width;
canvas.height = image.height;
// 坐標(biāo)(0,0) 表示從此處開(kāi)始繪制,相當(dāng)于偏移。
canvas.getContext("2d").drawImage(image, 0, 0);
return canvas;
}
轉(zhuǎn)換 Canvas 為 Image
假設(shè)圖像已經(jīng)在canvas上處理好,那么可以使用以下方法,把canvas轉(zhuǎn)變?yōu)閳D片Image對(duì)象。
代碼如下:
// 從 canvas 提取圖片 image
function convertCanvasToImage(canvas) {
//新Image對(duì)象,可以理解為DOM
var image = new Image();
// canvas.toDataURL 返回的是一串Base64編碼的URL,當(dāng)然,瀏覽器自己肯定支持
// 指定格式 PNG
image.src = canvas.toDataURL("image/png");
return image;
}
關(guān)于Canvas與Image怎么實(shí)現(xiàn)互相轉(zhuǎn)換就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。