ズームインしたときにChromeが小さな画像をぼかすのを防ぐ方法は?


13

ピクセルアートを間近で見ようとすると、クロムが画像をぼかすようになります。画像を拡大しても、ぼやけたピクセルではなく、鮮明なピクセルを見ることができるようにします。


1
現時点では、画像を拡大するときにchromeが画像の端を滑らかにする平滑化アルゴリズムを無効にできるとは思いません。そうする拡張機能があるか、誰かが私がまだ知らない何かを知っていない限り。
DuckDuckGoose

ズームとは、ctrl / cmdと+を意味しますか?
booyaa

@booyas、はい、それは私が意味するものです。
プロペラ

1
状況は改善されましたが、これはstackoverflow.com/questions/7615009/…の可能な複製です。特に、でnamuolの答えとjsfiddleを参照してくださいjsfiddle.net/namuol/VAXrL/1459私はあなたが欠けていると思うものを示しています。TL;クロームのDR: "image-rendering:pixelated;" imgおよびcanvas要素。
ドンハッチ

あなたの質問ではありませんが、少なくとも高品質で画像を保存することは可能ですか?ズームは余分な詳細を使用しますか?
Xonatron

回答:


16

更新

コメントによると:

Firefoxで可能になりました:image-rendering:optimizeSpeed; –アルノー

元の

これは、ブラウザーから直接実行することはできません。

スムージングは​​アルゴリズムを介して適用され、最新のブラウザのほとんどは同様に動作し、IE、Firefox、Chromeではこれをオフにする方法はありません。

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

他のオプションもあります。上記のリンクからの2つの主なポイントは次のとおりです。どちらもChromeアドオンです。

画像リサイズ
imagezoom

ブラウザ以下CSSコードを適用すると、それがオフになります!

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

残念ながら、これはChromeで機能しません(OSXを除く)。
のLaPO

これをChromeでどのように/どこに正確に「適用」する必要がありますか?
14

4
不可能だと言って、実際にそれを行うための作業コードを貼り付けましたか?
ペトルペラー

@petrpellerはありません。ブラウザでは直接実行できないことを明確に書いています。次に、プラグインが必要であることを説明します...投稿を読むことができるのに、なぜこの質問をするのですか?!?
デイブ

2
image-rendering: -webkit-optimize-contrast;クロームで働く
WP学生

2

画像でGPUレンダリングを使用すると、ChromeとFirefoxでいくつかの問題に気づきました。例えば:

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

次のCSSステートメントがある場合は、それらを削除して、画質が向上するかどうかを確認してください。


2

このブックマークレットを作成して、スムージングを無効にしました。ブックマークバーにリンクを保持し、ページでアンチエイリアスを無効にする場合は、通常ピクセルアートまたはクラシックゲームでリンクをタップします。

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

ブックマークレットが魅力的だったのは、拡張機能に「訪問するWebサイト上のすべてのデータを読み取り、変更する」許可を与えるのが好きではないからです。


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.