我正在尝试调用API,该API返回二进制数据(base64)。当我上传图像时,它以二进制格式存储在数据库中,并且页面图标得到动态更新。在chrome和Firefox中,页面图标可见并且可以正常工作。但是在Edge和IE中,图像看起来太小且拉长。有人知道我该怎么办?
document.title = title;
var src = "api/file/getPageLogo";
src = src + '?=' + Math.random();
var link = document.createElement('link'),
oldLink = document.getElementById('dynamic-favicon');
link.id = 'dynamic-favicon';
link.rel = 'icon';
link.href = src;
if (oldLink) {
document.head.removeChild(oldLink);
}
document.head.appendChild(link);
答案 0 :(得分:0)
实际问题是即使图像尺寸为32 * 32,在将其转换为base64格式时,代码也将尺寸转换为200 * 60,这是实现其他功能所必需的。
var base64Data = FileTools.GetResizedImageBase64FromDataUri(image.FileData, 200, 60);
只需将逻辑分开以实现两种不同的功能,并将其中一个的尺寸更改为32 * 32即可解决此问题。