Cuando intento ver de cerca el arte de píxeles, Chrome comienza a difuminar la imagen. Quiero hacerlo para que, incluso cuando la imagen esté ampliada, todavía pueda ver los píxeles con detalles nítidos, no borrosos.
Cuando intento ver de cerca el arte de píxeles, Chrome comienza a difuminar la imagen. Quiero hacerlo para que, incluso cuando la imagen esté ampliada, todavía pueda ver los píxeles con detalles nítidos, no borrosos.
Respuestas:
Actualizar
Según los comentarios:
ahora es posible en Firefox: renderizado de imágenes: OptimizeSpeed; - Arnaud
Original
Esto no es posible directamente desde el navegador.
El suavizado se aplica a través de un algoritmo y la mayoría de los navegadores modernos son similares y en IE, Firefox y Chrome no hay forma de desactivarlo.
http://productforums.google.com/forum/#!topic/chrome/AIihdmfPNvE
Tienes otras opciones, aquí están los 2 puntos principales del enlace de arriba, ambos son complementos de Chrome.
¡Puede aplicar el código CSS a continuación en el navegador , que lo desactivará!
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;
trabajando en Chrome
Noté algunos problemas con Chrome y Firefox cuando utilizo el procesamiento de GPU con imágenes. P.ej:
img {
-webkit-transform-style: preserve-3d;
transform-style: preserve-3d;
}
Si tiene alguna declaración CSS con lo siguiente, intente eliminarla y vea si aumenta la calidad de su imagen.
Hice este bookmarklet para deshabilitar el suavizado. Mantengo el enlace en mi barra de marcadores y lo toco cuando quiero deshabilitar el antialiasing en una página, generalmente para pixel art o juegos clásicos :
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);
}
})()
La razón por la que un bookmarklet era atractivo es que no me gusta dar a las extensiones el permiso "leer y cambiar todos sus datos en los sitios web que visita".