如何为MS Edge使用bicubic制作图像缩放?是否有一些可以改变行为的CSS或类似物。
请参阅此页:http://duttongarage.com/Race-Workshop~317
右边有两个带纹理背景的图像,你可以很清楚地看到奇怪的文物
左侧是Chrome,右侧是MS Edge。正如你所看到的,调整大小是最近邻或线性的,而不是双三次,有一些奇怪的莫尔效应。
Microsoft Edge位于顶部,Chrome位于底部。请注意像素化,就像我对过去十年的浏览器所期望的那样。
答案 0 :(得分:2)
很抱歉愚蠢的答案,但是,正如我所看到的,Edge不支持任何图像渲染选项,所以,请尝试使用jQuery来调整图片大小。
例如,您可以使用this answer中的解决方案:
只需在您的图片下创建<canvas id="canvas"></canvas>
,然后看:
var canvas = document.getElementById("canvas");
var ctx = canvas.getContext("2d");
img = new Image();
img.onload = function () {
canvas.height = canvas.width * (img.height / img.width);
/// step 1
var oc = document.createElement('canvas'),
octx = oc.getContext('2d');
oc.width = img.width * 0.5;
oc.height = img.height * 0.5;
octx.drawImage(img, 0, 0, oc.width, oc.height);
/// step 2
octx.drawImage(oc, 0, 0, oc.width * 0.5, oc.height * 0.5);
ctx.drawImage(oc, 0, 0, oc.width * 0.5, oc.height * 0.5,
0, 0, canvas.width, canvas.height);
}
img.src = "http://duttongarage.com/img/2167/824";
您可以使用数学轻松调整oc.width。例如,您可以使用
oc.width = $(".me-wrap-image").width();
oc.height = $(".me-wrap-image").height();
更好,如果您通过
调整结构| .me-wrap-image
| .some-class-to-get-width-and-height
-> img
对于img.src你可以使用
$("div.some-class-to-get img").each(function(){
img.src = $(this).attr('src');
});
但我不确定,如何让它正常工作。 希望你解决它:)