2019年3月22日金曜日

PNGのチャンク 第3回 カラータイプと色深度

こんにちは、きまぐれソフトです。

前回は必須チャンクの説明をしましたが、今回はIHDRチャンクで指定できるカラータイプと色深度について説明します。

色深度はRGB値またはグレースケールを何ビットで表すかが直接格納されていますが、使って良いビット数は決められています。また、カラータイプによって色深度は制限されます。
カラータイプと色深度の許された組み合わせは以下の通りです。
カラータイプ色深度説明
01,2,4,8,16各ピクセルが色深度で指定されたビット数のグレースケール画像。
28,16ピクセルのRGB各色が色深度で指定されたビット数のRGB画像。いわゆるフルカラー。
31,2,4,81600万色中最大256色のインデックスカラー。使用可能色数は色深度で指定。
48,16各ピクセルが色深度で指定されたビット数のグレースケール画像とアルファチャンネル。
68,16ピクセルのRGB各色が色深度で指定されたビット数のRGB画像とアルファチャンネル。

カラータイプが3の時はIDATチャンクが色を直接指定しないので、PLTEチャンクが必要になります。その他のカラー画像の場合もPLTEチャンクを付加する事が許されていますが、通常の使用環境では無視されます。
カラータイプ4と6はアルファチャンネルを持っているので透明部分を作る事が可能です。GIFだとインデックスカラーの内の1色を透明として扱うだけですが、PNGではピクセル単位に透明度を持つ事ができます。
また、カラータイプ3はアルファチャンネルを持ちませんが、各インデックスカラー毎に透明度が指定できます。完全な透明に1色が使える他、限定的ながら半透明が使えます。

次回はPLTEチャンクを紹介します。


0 件のコメント:

コメントを投稿