2019年4月16日火曜日

PNGのチャンク 第9回 tRNSチャンク


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

前回はチャンクの命名規則を説明しました。今回からはチャンク名が小文字で始まる補助チャンクを紹介していきます。
今回はtRNSチャンクを紹介します。

tRNSチャンク

tRNSチャンクは透明度を指定するチャンクです。カラーモードによって動作が異なります。また、アルファチャンネルを持つカラーモードには使用できません。
カラーモードに依って以下の使い方になります。

  • モード0(グレー)
    チャンク内で指定した色を完全透明とします。0xFFFFを指定して白を透明にしたりします。
  • モード2(カラー)
    チャンク内で指定した色を完全透明とします。画像内で使われていない色を指定して透明にしたりします。
  • モード3(インデックスカラー)
    色番号毎に透明度を指定します。色番号の指定はPLTEチャンクと共通です。PLTEチャンクのアルファチャンネルとして使われます。ドロップシャドーの様に同じ色で透明度が異なる透明画像が作れます。インデックスカラーの1色を透明背景に使う事が多いと思います。
  • モード4(透明度付グレースケール)
    このチャンクは付加できません。
  • モード6(透明度付カラー)
    このチャンクは付加できません。
背景色を透明にする事は多いと思います。データを軽くするためにインデックスカラーを使う場合はGIFと同じ様に1色を透明に割り当てる事ができます。そもそも透明度を持つカラーモードの場合は、IDATチャンク内で透明度を持ちますからtRNSチャンクは使用できません。

次回は色関連のチャンクを紹介します。


0 件のコメント:

コメントを投稿