Когда я пытаюсь рассмотреть пиксельную графику вблизи, Chrome начинает размывать изображение. Я хочу сделать так, чтобы даже при увеличении изображения я все еще мог видеть четкие, а не размытые пиксели.
Когда я пытаюсь рассмотреть пиксельную графику вблизи, Chrome начинает размывать изображение. Я хочу сделать так, чтобы даже при увеличении изображения я все еще мог видеть четкие, а не размытые пиксели.
Ответы:
Обновить
Согласно комментариям:
теперь это возможно в Firefox: рендеринг изображения: optimizeSpeed; - Арно
оригинал
Это невозможно напрямую из браузера.
Сглаживание применяется с помощью алгоритма, и большинство современных браузеров делают подобное, а в IE, Firefox и Chrome нет возможности отключить это.
http://productforums.google.com/forum/#!topic/chrome/AIihdmfPNvE
У вас есть другие варианты, вот 2 основных пункта по ссылке выше, оба являются аддонами Chrome.
Вы можете применить код CSS ниже в браузере , который отключит его!
img {
image-rendering: optimizeSpeed; /* */
image-rendering: -moz-crisp-edges; /* Firefox */
image-rendering: -o-crisp-edges; /* Opera */
image-rendering: -webkit-optimize-contrast; /* Chrome (and Safari) */
image-rendering: pixelated; /* Chrome as of 2019 */
image-rendering: optimize-contrast; /* CSS3 Proposed */
-ms-interpolation-mode: nearest-neighbor; /* IE8+ */
}
image-rendering: -webkit-optimize-contrast;
работающий в Chrome
Я заметил некоторые проблемы с Chrome и Firefox при использовании графического рендеринга с изображениями. Например:
img {
-webkit-transform-style: preserve-3d;
transform-style: preserve-3d;
}
Если у вас есть какие-либо операторы CSS со следующими параметрами, попробуйте удалить их и посмотреть, улучшится ли качество вашего изображения.
Я сделал этот букмарклет, чтобы отключить сглаживание. Я сохраняю ссылку на панели закладок и нажимаю на нее, когда хочу отключить сглаживание на странице, обычно для пиксельной графики или классических игр :
javascript:(function pixelate() {
const sheet = document.createElement('style');
sheet.innerHTML = 'img { image-rendering: pixelated; }';
document.head.appendChild(sheet);
for(let i = 0; i < frames.length; ++i) {
frames[i].document.head.appendChild(sheet);
}
})()
Причина, по которой букмарклет был привлекательным, заключается в том, что мне не нравится давать расширениям разрешение «читать и изменять все ваши данные на посещаемых вами веб-сайтах».