web-dev-qa-db-ja.com

画像のスケーリング時にアンチエイリアシングを無効にします

可能性のある複製:
アンチエイリアスなしで画像を拡大する方法

画像を拡大するときにアンチエイリアスを無効にすることは可能ですか?

今、私はこのようなものを得ます:

What i get

次のcssコードを使用します。

#bib { width:104px;height:104px;background-image:url(/media/buttonart_back.png);background-size:1132px 1360px;
background-repeat:no-repeat;}

私が望むのは、このようなものです:

What i seek

要するに、CSSフラグはdisableにアンチエイリアスを適用し、画像を拡大するときにハードエッジを保持します。

JavaScriptのハッキングなども歓迎します。

(はい、phpとimagemagickもこれを行うことができますが、cssベースのソリューションを好むでしょう。)

[〜#〜] update [〜#〜]以下が提案されています。

image-rendering: -moz-crisp-edges;
image-rendering: -moz-crisp-edges;
image-rendering: -o-crisp-edges;
image-rendering: -webkit-optimize-contrast;
-ms-interpolation-mode: nearest-neighbor;

しかし、それは背景画像では機能しないようです。

53
Nils Munch

これを試してください、それはすべてのブラウザでそれを削除するための修正です。

img { 
    image-rendering: optimizeSpeed;             /* STOP SMOOTHING, GIVE ME SPEED  */
    image-rendering: -moz-crisp-edges;          /* Firefox                        */
    image-rendering: -o-crisp-edges;            /* Opera                          */
    image-rendering: -webkit-optimize-contrast; /* Chrome (and eventually Safari) */
    image-rendering: pixelated; /* Chrome */
    image-rendering: optimize-contrast;         /* CSS3 Proposed                  */
    -ms-interpolation-mode: nearest-neighbor;   /* IE8+                           */

}

ソース:

http://nullsleep.tumblr.com/post/16417178705/how-to-disable-image-smoothing-in-modern-web-browsers

http://updates.html5rocks.com/2015/01/pixelated

GitaarLAB

105
Vargr

Firefoxのみで動作するCSS

img { image-rendering: -moz-crisp-edges; } 

それは私のために働いた(firefox 16.) enter image description here

8
Champ