画像を縮小した際、端にできる透明な部分

例えば Photoshop で画像の解像度を変更して縮小したとき、淵のピクセルにアルファチャンネルがかかり、少し透明になってしまうときがある。これがもの凄く気になっていた。
そんな悩みが解決したのでメモ。
念のため Photoshop は CS2、Mac OS は 10.4.11。

例えばこんな画像があります。

sc_1.jpg

サイズは 128px * 128px。内容は背景レイヤーと画像のレイヤー2枚だけ。しかも分かりやすいように2色しか使っていません。
こいつを 16px * 16px に縮小したいので、普通に「イメージ > 画像解像度」にて幅を16と入力し縮小すると…

sc_2.jpg

こんな感じになります。
128px から 16px へ 1/8 縮小したことになり、うまく行ったように見えますが、実は端のピクセルには透明度が設定されて少し背景色が透けて見えて、すごく気になります。
見た目だけ拡大(800%)するとこんな感じ。

sc_3.jpg

透けてるってことが分かるように背景をグラデーションにしてみたのが下の画像。
ほら、端のピクセルだけうっすら透けてる。

sc_4.jpg

縮小時に半端な数字になるため、こうなるのだろうと思いきや、元画像内の矩形のサイズは 80px * 112px という「8」で割り切れる数字。ってかこっちは割り切れる数字選んでやってるのにこの有り様。こんなの納得いくはずがない。

でも

「画像解像度」を編集するウィンドウの中にデフォルト「バイキュービック法」の部分を変更してはどうだろうと思いついてやってみた。ちなみにニアレストネイバー法ってのもあるけどもサンプル方法が大きく違うので省いています。

sc_5.jpg

左:バイキュービック法(デフォルト)
右:バイリニア法
で、縮小したものを並べて拡大してみた。

おお、透明になっていない。
100% で見たときもこの差はきもちいい。

sc_6.jpg

知らないのは私だけだったかもしれないけど、とりあえずよかったよかった。

コメントを記入