【PC&NET】 PNG画像の解像度に端数ができる理由と注意点

イラストレーター関連の問題、第三弾です。

今回はPNG画像についてです。
御存知の通りJPEG画像は保存を繰り返すと目に見えて画質が劣化してしまいます。
10回保存を繰り返すとこの有り様です。

repeat_save_10-01

このため最近では劣化しにくいPNGを使うことが多くなりました。
ただこのPNGの画像をイラストレーターに取り込む場合、注意しなくてはいけないことがあります。

今回はこの問題についてまとめていきます。

スポンサーリンク

1.問題はなに?

イラストレーターは72ppiの解像度で画像を取り込むため、画像が72ppiであれば等倍で表示されます。
100px(72ppi)の画像であればイラストレーターに取り込んでも100pxで表示されるということです。

png_problem_01-01

しかしPNGは72ppiで出力した画像であってもわずかに縮小されて表示されます。

png_problem_02-01

100pxの画像が99.987pxに縮小されてしまうのです。

もちろん取り込んだ画像には100pxの情報がありますので、イラストレーター上で99.987pxを100pxに直してしまえば無問題です。

png_problem_03-01

PNG画像を取り込んだ時は必ず小数点以下の端数ができるため、毎回この作業が必要なのです。

そしてこれを忘れた場合に前回の記事「【PC&NET】 イラストレーターに画像を取り込むとボケたり1px大きくなったりする問題」と同じ不具合が出てしまいます。

2.原因はなに?

PNGを解像度72ppiで出力しようとすると端数を持った72.009ppiとして出来上がります。
実は他の画像フォーマットと違い、PNGは72ppiジャストでは出力できないのです。

まずイラストレーター上で小さく表示される理由は、解像度72.009ppiの画像データを72ppiとして取り込んだためです。

100px × (72ppi/72.009ppi) = 99.987px
ということです。

ではなぜ72.009ppiなのでしょうか?

この原因はPNGのフォーマットにあります。
PNGでは
  ・画像サイズ(整数)
  ・1mあたりのピクセル数:ppm(整数)
という情報が組み込まれています。

この「1インチあたりのピクセル数:ppi」ではなく「1mあたりのピクセル数:ppm」を使っているのが諸悪の根源なのです。

では72ppiをppmに換算してみましょう。

72ppiとは1インチ(2.54cm)に72ピクセルあるということです。
これを1mに換算すると、

72ppi × (100cm/2.54cm) = 2834.6456px

整数化すると四捨五入(おそらく)して2835pxとなります。
この2835という数字がPNGの解像度情報として記述されているのです。

では逆にこの2835ppmからppiを算出してみましょう。
1mの中に2835pxあるのだから、1インチに換算すると

2835px×(2.54cm/100cm)=72.009ppi

となります。

これが解像度に端数ができる真相です。

今回は72ppiですが、PNGの場合は150ppiや350ppiでも同様に端数ができます。

まとめるとPNGでは
   72ppiは72.009ppi
   150ppiは150.012ppi
   350ppiは350.012ppi
となります。

余談ですが、イラストレーターにこれらの解像度のPNG画像を取り込むとppiが間違った数値で表記されます。

png_problem_04-01

処理では正しい数値を使っているので問題はありませんが、この欄の数値は当てにしないほうがいいでしょう。

3.どうしてこうなった

メートル基準の解像度を無理やりインチ基準で使っていることが発端なわけですが、どうしてこんなことになったのでしょうか。

インチを含む「ヤード・ポンド法」は世界的に廃止する方向に動いていますので、新しい規格であるPNGは「メートル法」に準じています。
ほとんどの国が既に「メートル法」に切り替え済みなのですが、未だアメリカでは「ヤード・ポンド法」が強く、「メートル法」への切り替えすら拒否をしています。このためアメリカの影響力の強いジャンルでは「メートル法」への切り替えができていないのです。

その一つがこの画像処理関連なのです。

今回のPNGの問題は元をたどれば「アメリカが1875年に締結されたメートル条約を守らないから」という予想外のところにたどり着いてしまいました。
いやはや。

4.どうすればいい?

前出の通り、取り込んだ画像サイズに端数があることに気づいて修正すれば何の問題もありません。

また作業で気が付かなくても出力した画像に問題がなければ無視していいでしょう。

もし「スクリーンショット → 画像ソフトでトリミング → PNG画像で保存 → イラストレーターでコメントを加える」という作業をするのであれば無理にPNGを使う必要はなく、中間ファイルはBMPを使えばよいでしょう。

兎にも角にも「イラストレーターでPNGを取り込む時はこういう問題がある」ということだけは覚えておきましょう。


スポンサーリンク
  • このエントリーをはてなブックマークに追加

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA