Como evitar que o Chrome desfoque imagens pequenas quando ampliado?

Como evitar que o Chrome desfoque imagens pequenas quando ampliado?

Quando tento visualizar pixel art de perto, o Chrome começa a desfocar a imagem. Quero fazer com que, mesmo quando a imagem for ampliada, eu ainda possa ver os pixels com detalhes nítidos, e não desfocados.

Responder1

Atualizar

Conforme os comentários:

agora é possível no Firefox: renderização de imagem: OptimizeSpeed; – Arnaud

Original

Isso não é possível diretamente do navegador.

A suavização é aplicada através de um algoritmo e a maioria dos navegadores modernos fazem o mesmo e no IE, Firefox e Chrome não há como desligar isso.

http://productforums.google.com/forum/#!topic/chrome/AIihdmfPNvE

Você tem outras opções, aqui estão os 2 pontos principais do link acima, ambos são complementos do Chrome.

redimensionador de imagem
zoom de imagem

Você poderia aplicar oCódigo CSS abaixo no navegador, o que irá desligá-lo!

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+                */
    }

Responder2

Possível em 2019 com o seguinte CSS:image-rendering: pixelated;

Responder3

Fiz este bookmarklet para desabilitar a suavização. Eu mantenho o link na minha barra de favoritos e toco nele quando quero desabilitar o antialiasing em uma página, geralmente para pixel art oujogos clássicos:

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);
  }
})()

O motivo pelo qual um bookmarklet era atraente é que não gosto de dar às extensões a permissão de “ler e alterar todos os seus dados nos sites que você visita”.

Responder4

Notei alguns problemas com o Chrome e o Firefox ao usar a renderização de GPU com imagens. Por exemplo:

img {
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
}

Se você tiver alguma instrução CSS com o seguinte, tente removê-la e veja se a qualidade da imagem aumenta.

informação relacionada