Canvas與Image互相轉(zhuǎn)換示例代碼

字號:


    本文向大家展示怎樣轉(zhuǎn)換Image為canvas,以及canvas如何提取出一個Image,示例代碼如下,有此需求的朋友可以參考下,希望對大家有所幫助
    轉(zhuǎn)換 Image為 Canvas
    要把圖片轉(zhuǎn)換為Canvas(畫板,畫布),可以使用canvas元素 context 的drawImage方法:
    代碼如下:
    // 把image 轉(zhuǎn)換為 canvas對象
    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) 表示從此處開始繪制,相當(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對象。
    代碼如下:
    // 從 canvas 提取圖片 image
    function convertCanvasToImage(canvas) {
    //新Image對象,可以理解為DOM
    var image = new Image();
    // canvas.toDataURL 返回的是一串Base64編碼的URL,當(dāng)然,瀏覽器自己肯定支持
    // 指定格式 PNG
    image.src = canvas.toDataURL("image/png");
    return image;
    }
    圖像image和canvas的互相轉(zhuǎn)換比你想象的還要容易,以后我將向你演示不同的圖像處理技術(shù),相信在未來你肯定能用這些技術(shù)賺到大錢。