将图像转换为角度 2 中的 base64
2022-09-02 23:01:48
将图像转换为角度 2 中的 base64,则从本地上传图像。当前我正在使用 fileLoadedEvent.target.result。问题是,当我通过REST服务将这个base64字符串发送到java时,它无法对其进行解码。当我尝试这个base64字符串与免费的在线编码器 - 解码器,我也看不到解码的图像。我也尝试使用画布。我没有得到正确的结果。有一件事是确定我得到的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);
}
}