欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

js將圖片轉(zhuǎn)base64的兩種實(shí)現(xiàn)方法

 更新時(shí)間:2023年07月22日 10:37:02   作者:一枚小銀子  
這篇文章主要給大家介紹了關(guān)于js將圖片轉(zhuǎn)base64的兩種實(shí)現(xiàn)方法,Base64是網(wǎng)絡(luò)上最常見的用于傳輸8Bit字節(jié)碼的編碼方式之一,Base64就是一種基于64個(gè)可打印字符來(lái)表示二進(jìn)制數(shù)據(jù)的方法,需要的朋友可以參考下

第一種:Image + canvas

const getBase64Image = src => {
    return new Promise(resolve => {
        const img = new Image()
        img.crossOrigin = ''
        img.src = src
        img.onload = function () {
            const canvas = document.createElement('canvas')
            canvas.width = img.width
            canvas.height = img.height
            const ctx = canvas.getContext('2d')
            ctx?.drawImage(img, 0, 0, img.width, img.height)
            const ext = img.src.substring(img.src.lastIndexOf('.') + 1).toLowerCase()
            const dataURL = canvas.toDataURL('image/' + ext)
            resolve(dataURL)
        }
    })
}

第二種:xhr + FileReader

const getBase64Image = src => {
    return new Promise(resolve => {
        let xhr = new XMLHttpRequest()
        xhr.open('get', src, true)
        xhr.responseType = 'blob'
        xhr.onload = function () {
            if (this.status == 200) {
                let blob = this.response
                let oFileReader = new FileReader()
                oFileReader.onloadend = function (e) {
                    const base64 = e.target.result
                    resolve(base64)
                }
                oFileReader.readAsDataURL(blob)
            }
        }
        xhr.send()
    })
}

總結(jié)

到此這篇關(guān)于js將圖片轉(zhuǎn)base64的兩種實(shí)現(xiàn)方法的文章就介紹到這了,更多相關(guān)js圖片轉(zhuǎn)base64內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 細(xì)數(shù)localStorage的用法及使用注意事項(xiàng)

    細(xì)數(shù)localStorage的用法及使用注意事項(xiàng)

    這篇文章主要介紹了細(xì)數(shù)localStorage的用法及使用注意事項(xiàng),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • javascript 驗(yàn)證碼生成代碼 推薦學(xué)習(xí)

    javascript 驗(yàn)證碼生成代碼 推薦學(xué)習(xí)

    非常不錯(cuò)的用javascript實(shí)現(xiàn)的驗(yàn)證碼實(shí)現(xiàn)代碼。
    2009-07-07
  • JavaScript中清空數(shù)組的三種方法分享

    JavaScript中清空數(shù)組的三種方法分享

    JavaScript中清空數(shù)組的三種方法分享,需要的朋友可以參考下。
    2011-04-04
  • JS匿名函數(shù)實(shí)例分析

    JS匿名函數(shù)實(shí)例分析

    這篇文章主要介紹了JS匿名函數(shù),結(jié)合實(shí)例形式分析了javascript匿名函數(shù)的定義、參數(shù)、返回值等相關(guān)使用方法,需要的朋友可以參考下
    2016-11-11
  • 最新評(píng)論