写真を縮小するとき、サイズの次に出会う値が品質です。0から1までの数字ひとつですが、それが何を決めているのかの説明が付いていることは稀です。結論から書くと、0.8前後に置いて先へ進んでかまいません。以下はその理由と、その既定値から外れるべき場合です。
JPEGとWebPは非可逆圧縮です。元のまま保存せず、一部を捨ててファイルを小さくします。しかも何でも捨てるのではなく、人の目が気づきにくいものから捨てます。
人の目は明るさの変化には敏感で、色の変化には鈍いです。また広い面のゆるやかな変化はよく見えますが、狭い面の急な変化は見落とします。圧縮はその性質をそのまま利用します — 色の情報を先に減らし、細かい部分からならしていきます。
つまり品質の値は「どれだけ鮮明か」ではなく「どれだけ捨てるか」です。下げるほど多く捨て、捨てたものが見え始める位置は画像ごと、人ごとに少しずつ違います。
捨てる量と見え方は比例しません。おおよそこう進みます。
| 品質 | 容量 | 見た目 |
|---|---|---|
| 0.95 | 非常に大きい | 0.85 と区別がつかない |
| 0.85 | 大きい | 事実上そのまま |
| 0.80 | ほどほど | 拡大してようやく差が分かる |
| 0.70 | 小さい | 空や肌にムラが出始める |
| 0.50 | 非常に小さい | 格子状の模様がはっきり出る |
0.8から0.95に上げると容量はほぼ倍になりますが、画面で見分けられる人はほとんどいません。逆に0.7を下回ると急に汚くなります。効きが鈍る折れ目が0.8付近にあるので、そこが既定値です。
PNGは可逆なので何も捨てません。そのためスライダーを動かしても結果は変わりません。このツールはPNGを選ぶとその事実を画面に出します — 効かない値をいじり続けるのを防ぐためです。
PNGを小さくしたいなら、品質ではなくサイズを縮めるか色数を減らす必要があります。写真をPNGで保存すると容量が何倍にもなるので、写真は最初からWebPかJPEGに置くほうが賢明です。
すでにJPEGのファイルをまたJPEGで保存すると、捨てたものの上からさらに捨てます。これを世代劣化と呼びます。品質を1.0に上げても、すでに失われた情報は戻らず、ファイルが大きくなるだけです。
メッセージアプリで受け取った写真は、すでに一度圧縮されています。それをまた縮めれば二度目です。できるだけ原本から一度で処理してください。原本がない場合は仕方ありませんが、そのときは品質をやや高め(0.85)にしておくほうが安全です。
画像一括リサイズは変換が終わると前後の容量と削減率を並べて表示します。数字より大事なのは目で見ることで、見る場所は決まっています。
この三か所が無事なら残りも無事です。設定を変えて試すのにファイルを入れ直す必要はありません — 値を変えて変換を押し直せば、同じファイルに新しい設定が適用されます。
サイズのほうがはるかに効きます。4000ピクセルを品質0.95で保存するより、1600ピクセルに縮めて0.8で保存するほうが、ファイルははるかに小さく画面では良く見えます。どのみち画面には1600ピクセルしか描かれないからです。
順序をつけるなら先にサイズを合わせ、それから品質に触ります。サイズを正しく取れば、品質は既定値から動かす必要がほとんどありません。どのサイズにすべきかは用途別の画像サイズ基準にまとめています。