js 图片url地址转base64
时间: 2024-10-17 19:01:36 浏览: 9
在JavaScript中,将图片URL转换成Base64编码,通常是为了在不需要直接访问原始图片的情况下显示图像,例如发送到后台处理或在本地存储中。这里是一个简单的示例:
```javascript
function urlToBase64(url) {
return new Promise((resolve, reject) => {
const img = new Image();
img.src = url;
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);
let dataURL = canvas.toDataURL("image/jpeg"); // 可以改为其他格式,如 "image/png"
resolve(dataURL.replace(/^data:image\/(.*);base64,/, ""));
};
img.onerror = reject;
});
}
// 使用示例
urlToBase64('https://example.com/image.jpg')
.then(base64Data => console.log('Base64编码:', base64Data))
.catch(error => console.error('转换失败:', error));
```
这个函数通过创建一个`<img>`标签加载图片,然后在`onload`事件触发后绘制到一个`<canvas>`上,再将`canvas`转换为Base64编码。
阅读全文