iPhoneがスクリーンショットをPNGとしてキャプチャするのはなぜですか?


回答:


64

PNGは透明度を許可するのに役立つだけではありません。PNGは可逆形式であり、JPEGは非可逆形式の圧縮を使用します。また、PNGはスクリーンショットをかなりよく圧縮します(カメラの写真とは異なり、AppleはそれらにJPGを使用します)。


興味がある場合の詳細情報:

ここに画像の説明を入力してください

また、PNGの利点の技術的な概要は読む価値があります(基本的にはトピックに関する主要なリファレンスの1つであり、1日を過ごすのに十分な詳細が含まれています)。抜粋:

Webの場合、1999年初頭には、ユビキタスサポートを備えた2つの画像形式、JPEGとGIFがあります。JPEGは、設計されたタスクに非常によく適しています。つまり、フォトリアリスティックな8ビットグレースケールおよび24ビットトゥルーカラーイメージを高品質で優れた圧縮で保存、送信、および表示することです。独自の条件でJPEGと競合する。しかし、GIFと同様に、PNGは、漫画やビットマップテキストなど、色の少ない画像やシャープなエッジの多い画像にはJPEGよりも適切です。PNGはまた、ガンマ補正(大まかに言うと、画像の「明るさ」のクロスプラットフォーム制御)と透明性を直接サポートします。これらについては、後ほど詳しく説明します。

GIFはWeb用のオリジナルのクロスプラットフォームの画像形式であり、多くの点で依然として適切な選択です。しかし、PNGはGIFを置き換えるために特別に設計されており、古い形式に比べて3つの主な利点があります:アルファチャネル(可変透明度)、ガンマ補正、2次元インターレース(画像を次第に詳細に表示する方法)です。PNGはほとんどすべての場合でGIFよりも圧縮率が高くなりますが、その差は一般に5%から25%程度であり、これは(通常)それだけで切り替えることを促すほどの大きな要因ではありません。PNGが再現しようとしないGIF機能の1つは、複数の画像のサポート、特にアニメーションです。PNGは、単一画像形式のみであったことを意図しています。この制限に対処するために、MNGと呼ばれる非常にPNGに似た拡張形式が開発されました。


3
ちなみに、スクリーンショットとカメラ写真の主な違いは、スクリーンショットは基本的に幾何学的な形状であり、カメラ写真のように「あいまい」ではないことです(したがって、PNGで圧縮された写真は元の写真より大きくなる場合があります)。ただし、カメラデータを適切に圧縮するために、ある程度の精度が失われるため、完全にシャープな線とスクリーンショットである正確な配置の世界では使用しないでください。
cpast

4
別の言い方をすれば、重要な違いは、写真とほとんどのレンダリングされたグラフィックスでのピクセルごとのデータの変動パターンです。レンダリングされたグラフィックスには通常、同一の色と透明度の領域が含まれます。PNGの繰り返し指向の圧縮はこれをうまく処理します。一方、写真は、撮影する物理的な世界の複雑さにより、画像全体で連続的で複雑な変化を示します。繰り返しはほとんどありません。そのため、JPEGは異なるアプローチを取り、画像の周波数空間、そのフーリエ係数をエンコードすることにより、変動を受け入れます。
テリーN

ナイスショーアンドテル。あなたは毎日新しいことを学びます。
ムフナマナ14

1
これは有効なポイントを提起し、90年代および2000年代初頭にWeb開発を行っていた私たちはあまりにも認識しているだけですが、1つの形式しか選択できない場合は、PNGが通常最良であることに変わりはありません。PNGを誤って選択すると、ファイルサイズが必要以上に大きくなりますが、誤ってJPGを選択すると、必要以上にファイルが大きくなったり、品質が低下したりします。
ジョンストーリー

@Franck、引用が必要なため、「PNGは、具体的にGIFを置き換えるために設計された」
Pacerier

50

これは:

PNGスクリーンショット

これよりずっと良く見える:

JPEGスクリーンショット

OK、私はJPEG圧縮品質クランクなければならなかったので、仕方 JPEGのスクリーンショットであるのに対し、PNG、スクリーン上に表示されて、まさにショーをスクリーンショット-明白が、ポイントの遺骨があること圧縮アーチファクトを作るためにダウンを常にはい(少しの非可逆、品質を100まで上げても)。

さらに、PNGは、フラットカラー、シャープなエッジ、繰り返しパターン(テキストなど)の大きな領域を持つ画像の圧縮に非常に適している傾向があります。したがって、多くの場合、ロスレスPNGスクリーンショットは、実際に許容可能な品質レベルで保存されたJPEGスクリーンショットよりも小さい場合があります。


5
伝えるよりもむしろショーのための小道具!
ジャプレス

しかし、ここでは、PNGはJPEGの4倍のサイズです(33ko vs 8 ko)。たぶん、あなたは真の比較のためにPNGよりも、同じサイズのJPEGをアップロードしてみてください
トーマスアヨブ

@Thomas:比較のために35 kBのJPEGを示します。それは小さな8 kBほど悪くはありませんが、テキストの周囲のグレーの縁取りなど、目に見える圧縮アーチファクトが残っています。ただし、答えとしては、画面/視力が悪い場合でも、アーティファクトが明らかな例が必要でした。
イルマリカロネン14

私は理解していますが、リンゴとリンゴを比較する方が良いです。なぜなら、ニンジンを持ってくると、あなたの素敵な答えが半ばいい答えになるからです。とにかく、私はあなたに視覚的な例に投票しました:)
トーマスAyoub 14

また、10年ほど前に約キロバイトのケアをやめたという点もあります。PNGは、私たちが持っている最高のロスレス圧縮です。高解像度ビデオの世界では、写真の数キロバイトはもはや問題ではありません。
ジョンストーリー14

10

スクリーンショットの機能の1つは、デバイス上で見ている特定の視覚的なアーティファクトを他の人に見せることです。おそらく、アプリ開発者に視覚的な不具合を見せることです。そのような場合、圧縮アーチファクトは、議論中の実際の問題から注意をそらす可能性があります。スクリーンショットはピクセル単位で完璧である必要があります。

したがって、.PNGのようなロスレス形式は必須です。

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