javascript - 以 Angular 2将图像转换为base64

标签 javascript java jquery angular typescript

在 Angular 2中将图像转换为base64,图像从本地上传。当前正在使用 fileLoadedEvent.target.result。问题是,当我通过 REST 服务将这个 base64 字符串发送到 java 时,它无法对其进行解码。当我使用免费的在线编码器解码器尝试这个 base64 字符串时,我也看不到解码图像。我也尝试使用 Canvas 。我没有得到正确的结果。有一件事是确定得到的 base64 字符串不正确,我需要为此添加任何包吗?或者在 Angular 2 中是否有任何特定的方法将图像编码为 base64,因为它在 Angular 1 - angular-base64-upload 包中。

请在下面找到我的示例代码

onFileChangeEncodeImageFileAsURL(event:any,imgLogoUpload:any,imageForLogo:any,imageDiv:any)
{
    var filesSelected = imgLogoUpload.files;
    var self = this;
    if (filesSelected.length > 0) {
      var fileToLoad = filesSelected[0]; 

      //Reading Image file, encode and display
       var  reader: FileReader = new FileReader();
       reader.onloadend = function(fileLoadedEvent:any) {

       //SECOND METHO
       var imgSrcData = fileLoadedEvent.target.result; // <--- data: base64 

        var newImage = imageForLogo;
        newImage.src = imgSrcData;
        imageDiv.innerHTML = newImage.outerHTML;

      }
      reader.readAsDataURL(fileToLoad);
    }
}

最佳答案

base64 字符串的工作 plunkr

https://plnkr.co/edit/PFfebmnqH0eQR9I92v0G?p=preview

  handleFileSelect(evt){
      var files = evt.target.files;
      var file = files[0];

    if (files && file) {
        var reader = new FileReader();

        reader.onload =this._handleReaderLoaded.bind(this);

        reader.readAsBinaryString(file);
    }
  }



  _handleReaderLoaded(readerEvt) {
     var binaryString = readerEvt.target.result;
            this.base64textString= btoa(binaryString);
            console.log(btoa(binaryString));
    }

关于javascript - 以 Angular 2将图像转换为base64,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42482951/

相关文章:

javascript - 克隆一个 div 并更改克隆 div 的所有元素的 id

javascript - 使用ajax提交表单来上传文件和其他字段

javascript - 如何使用django递归关系和react js回复特定评论

java - 需要创建5个形状

java - 无法访问对象的方法

javascript - jQuery(反)模式 : building selectors with string manipulation

javascript - HTML5 地理位置地址表单填充程序未捕获语法错误 : Unexpected token <

java - 从方法实例化类变量 - Java

javascript - Clearfix 不使 div 的高度扩展以适应内容

javascript - 在页面末尾加载 jQuery?