使用 AngularJs 将 base64 格式的数据转换为图像

Posted

技术标签:

【中文标题】使用 AngularJs 将 base64 格式的数据转换为图像【英文标题】:convert base64 formatted data to image using AngularJs 【发布时间】:2021-11-25 22:00:25 【问题描述】:

我正在尝试,但出现错误 如果您能帮助我了解如何操作,我将不胜感激。

 $http(
        method: 'GET',
        url: '/Home/GetEmployeeDetail',
        params:  ID: $scope.PersonID 
    ).then(function (result) 
        $scope.TC = result.data.TC;
        $scope.Name = result.data.Name;
        $scope.LastName = result.data.LastName;
        $scope.DateOfBirth = new Date(result.data.DateOfBirth.match(/\d+/)[0] * 1);
        $scope.Email = result.data.Email;
        $scope.Address = result.data.Address;
        var base64 = result.data.Image;
        console.log(base64);
     
        var imgbase64 = atob(base64);
        console.log(imgbase64);
        var imglength = imgbase64.length;
        var arrayBuffer = new ArrayBuffer(imglength);
        var uintArray = new Uint8Array(arrayBuffer);
        for (var i = 0; i < imglength; i++) 
            uintArray[i] = imgbase64.charCodeAt(i);
        
        $scope.img = uintArray;
 <div class="profile-images" style="width:90px ; height:90px">
                        <img ng-src="img" />
                    </div

【问题讨论】:

【参考方案1】:

您不需要对 base64 字符串进行任何修改即可在 ng-src 中设置它。查看以下 plunkr:https://plnkr.co/edit/WwnZ7mEvDXynb9M3

只需将字符串直接从后端传递给 ng-src。

$http(
        method: 'GET',
        url: '/Home/GetEmployeeDetail',
        params:  ID: $scope.PersonID 
    ).then(function (result) 
        var base64 = result.data.Image;
  
        $scope.img = base64;

【讨论】:

以上是关于使用 AngularJs 将 base64 格式的数据转换为图像的主要内容,如果未能解决你的问题,请参考以下文章

AngularJS:用于将动态 base64 编码图像作为背景图像的 ng-class

angularJS 从 base64 制作二进制数据图像并作为图像文件发送到服务器

使用Base64格式的图片制作ICON

如何将base64音频数据解码为wav格式

php 将图片转换 base64 格式与还原生成图片

使用Js将图片转换为base64格式-在线示例