Lorsque j'essaie de voir le pixel art de près, le chrome commence à brouiller l'image. Je veux faire en sorte que même lorsque l'image est agrandie, je puisse toujours voir les pixels avec des détails nets, pas flous.
Lorsque j'essaie de voir le pixel art de près, le chrome commence à brouiller l'image. Je veux faire en sorte que même lorsque l'image est agrandie, je puisse toujours voir les pixels avec des détails nets, pas flous.
Réponses:
Mise à jour
Selon les commentaires:
c'est désormais possible dans Firefox: rendu d'image: optimiseSpeed; - Arnaud
Original
Ce n'est pas possible directement depuis le navigateur.
Le lissage est appliqué via un algorithme et la plupart des navigateurs modernes font de même et dans IE, Firefox et Chrome, il n'y a aucun moyen de le désactiver.
http://productforums.google.com/forum/#!topic/chrome/AIihdmfPNvE
Vous avez d'autres options, voici les 2 points principaux du lien ci-dessus, les deux sont des addons Chrome.
Vous pouvez appliquer le code CSS ci-dessous dans le navigateur , ce qui le désactivera!
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;
travailler dans le chrome
J'ai remarqué des problèmes avec Chrome et Firefox lors de l'utilisation du rendu GPU avec des images. Par exemple:
img {
-webkit-transform-style: preserve-3d;
transform-style: preserve-3d;
}
Si vous avez des instructions CSS avec les éléments suivants, essayez de les supprimer et voyez si la qualité de votre image augmente.
J'ai créé ce bookmarklet pour désactiver le lissage. Je garde le lien dans ma barre de favoris et j'appuie dessus lorsque je souhaite désactiver l'anticrénelage sur une page, généralement pour le pixel art ou les jeux classiques :
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 raison pour laquelle un bookmarklet était attrayant est que je n'aime pas donner aux extensions l'autorisation "lire et modifier toutes vos données sur les sites Web que vous visitez".