JS图片转换成base64编码

67 阅读1分钟
 // 图片转换成base64
function getBase64Image(imgUrl, callback) {
    const imgDom = new Image();
    imgDom.crossOrigin = 'Anonymous'; // 解决跨域问题
    imgDom.src = imgUrl;
    imgDom.onload = () => {
        const canvas = document.createElement("canvas");
        const ctx = canvas.getContext("2d");
        canvas.width = imgDom.width;
        canvas.height = imgDom.height;
        ctx.drawImage(imgDom, 0, 0, imgDom.width, imgDom.height);
        const ext = imgDom.src.substring(imgDom.src.lastIndexOf(".") + 1).toLowerCase();
        const dataURL = canvas.toDataURL("image/" + ext);
        callback(dataURL);
    };
    imgDom.onerror = (error) => {
        console.error('Image load error:', error);
        callback(null);
    };
}