Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

js 图片转base64

作者:花小泽ノ   发布日期:2025-08-03   浏览:19

// 将图片转换为 Base64 的示例代码

function imgToBase64(url, callback) {
    // 创建一个 image 对象
    var img = new Image();

    // 设置跨域属性,确保可以加载外部资源
    img.crossOrigin = 'Anonymous';

    // 图片加载完成后的处理函数
    img.onload = function() {
        // 创建一个 canvas 元素
        var canvas = document.createElement('canvas');
        var ctx = canvas.getContext('2d');

        // 设置 canvas 的宽度和高度与图片一致
        canvas.width = img.width;
        canvas.height = img.height;

        // 将图片绘制到 canvas 上
        ctx.drawImage(img, 0, 0);

        // 将 canvas 内容转换为 base64 编码的字符串
        var dataURL = canvas.toDataURL('image/png'); // 可以指定其他格式如 'image/jpeg'

        // 调用回调函数并将 base64 字符串传递给它
        callback(dataURL);
    };

    // 加载图片
    img.src = url;
}

// 使用示例
imgToBase64('https://example.com/path/to/image.jpg', function(base64Img) {
    console.log(base64Img); // 输出 base64 编码的图片字符串
});

解释说明:

  1. 创建 Image 对象:我们首先创建一个 Image 对象来加载图片。
  2. 设置 crossOrigin 属性:为了确保可以加载跨域的图片资源,设置了 crossOrigin 属性为 'Anonymous'
  3. 图片加载完成后处理:当图片加载完成后,使用 canvas 来绘制图片,并将 canvas 的内容转换为 Base64 编码的字符串。
  4. 回调函数:通过回调函数将生成的 Base64 字符串返回给调用者。

你可以根据需要修改图片的 URL 或者调整输出的图片格式。

上一篇:js base64转图片

下一篇:js base64.encode

大家都在看

js 数组对象排序

js 数组删掉第一个值

js fill

js json数组

js 数组复制

js 复制数组

js 数组拷贝

js 对象转数组

js 深拷贝数组

js 点击空白区域触发事件

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站