动态生成的 Favicon Icon 在 IE 和 edge 中非常小。

Dynamically generated Favicon Icon is very small in IE and edge.

我正在尝试调用 API 其中 return 二进制数据 (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);  

Does not work in IE

Works in Chrome

实际问题是,即使图像尺寸为 32*32,在将其转换为 base64 格式时,代码也会将尺寸转换为实现其他功能所需的 200*60。

var base64Data = FileTools.GetResizedImageBase64FromDataUri(image.FileData, 200, 60);

简单地通过分离逻辑来实现两种不同的功能并将 1 的维度更改为 32*32 就解决了这个问题。