Quando provo a vedere da vicino la pixel art, Chrome inizia a sfocare l'immagine. Voglio farlo in modo che anche quando si ingrandisce l'immagine, riesco ancora a vedere i pixel con dettagli nitidi, non sfocati.
Quando provo a vedere da vicino la pixel art, Chrome inizia a sfocare l'immagine. Voglio farlo in modo che anche quando si ingrandisce l'immagine, riesco ancora a vedere i pixel con dettagli nitidi, non sfocati.
Risposte:
Aggiornare
Secondo i commenti:
ora è possibile in Firefox: rendering delle immagini: optimisepeed; - Arnaud
Originale
Questo non è possibile direttamente dal browser.
Il livellamento viene applicato tramite un algoritmo e la maggior parte dei browser moderni fa simili e in IE, Firefox e Chrome non c'è modo di disattivarlo.
http://productforums.google.com/forum/#!topic/chrome/AIihdmfPNvE
Hai altre opzioni, qui ci sono i 2 punti principali del link sopra, entrambi sono componenti aggiuntivi di Chrome.
È possibile applicare il codice CSS di seguito nel browser , che lo disattiverà!
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;
lavorando in Chrome
Ho notato alcuni problemi con Chrome e Firefox quando si utilizza il rendering GPU con immagini. Per esempio:
img {
-webkit-transform-style: preserve-3d;
transform-style: preserve-3d;
}
Se hai dichiarazioni CSS con quanto segue, prova a rimuoverle e vedi se la qualità dell'immagine aumenta.
Ho creato questo bookmarklet per disabilitare il livellamento. Tengo il collegamento nella barra dei segnalibri e lo tocco quando desidero disabilitare l'antialiasing su una pagina, di solito per pixel art o giochi classici :
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);
}
})()
Il motivo per cui un bookmarklet è stato interessante è che non mi piace concedere alle estensioni l'autorizzazione "leggi e modifica tutti i tuoi dati sui siti Web visitati".