「Tips - PNGフォーマット」の編集履歴(バックアップ)一覧はこちら

Tips - PNGフォーマット」(2007/10/03 (水) 22:26:00) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

&font(b,144%){CONTENTS} #contents ---- **PNG処理を組み込むためのライブラリ ***DLL -[[imgctl.dll>http://www.ruche-home.net/download/?pack=imgctl]] -[[PNGLoader.dll>http://www.functiont.info/programing/]] ***Delphiコンポーネント -[[PNG Delphi(TPNGImage)>http://pngdelphi.sourceforge.net/]] 英語 -[[TNeoPNG>http://www2.csc.ne.jp/~mci_error/menu_delphi_png.htm]] -[[GLDPNG>http://norg1964.hp.infoseek.co.jp/delphianworld/compo/graphmul.html#GM0040]] 開発・サポート終了 -[[GraphicEx>http://www.soft-gems.net/Graphics.php]] 英語、読み込みのみ **データ概要 |CENTER:~名称|CENTER:~役割|CENTER:~設置|~解説| |BGCOLOR(#f8f8e0):CENTER:|CENTER:|CENTER:||c |BGCOLOR(#ffd8ff):~PNGシグネチャ|識別部|必須|PNGフォーマットであることを示す。| |BGCOLOR(#fff0b8):~IHDRチャンク|ヘッダ|必須|画像サイズなどの基本情報。| |補助チャンク||推奨|色の表示に関する補助データ。| |BGCOLOR(#e8e8d0):~PLTEチャンク|パレット||最大256色分のパレット情報。&br();IHDRチャンクに含まれるカラー・モードによって有無が変わる。| |補助チャンク||推奨|パレットと透過に関する補助データ。| |BGCOLOR(#f8f8ff):追加チャンク||任意|| |BGCOLOR(#e0f0ff):~IDATチャンク|データ|必須|画像データ本体。複数あっても良い。| |補助チャンク||推奨|テキストデータ。どこに設置しても良い。| |BGCOLOR(#f8f8ff):追加チャンク||任意|GIFなどに関するデータ。どこに設置しても良い。| |BGCOLOR(#c8ffd0):~IENDチャンク|終端|必須|PNGファイルの終りを示す。| **データ構造 |BGCOLOR(#f8f8e0):CENTER:|CENTER:|CENTER:|CENTER:|CENTER:|c |BGCOLOR(#ffd8ff):~PNGシグネチャ|>|>|>|89 50 4E 47 0D 0A 1A 0A&br();固定| |(チャンク構造)|データ長&br();4バイト|チャンク名&br();4バイト|データ部&br();データ長に記述されたバイト数|CRC&br();4バイト| |BGCOLOR(#fff0b8):~IHDRチャンク|00 0D&br();固定|49 48 44 52&br();固定|(後述)|算出| |cHRMチャンク||||| |gAMAチャンク||||| |sBITチャンク||||| |sRGBチャンク||||| |iCCPチャンク||||| |BGCOLOR(#e8e8d0):~PLTEチャンク|データ長による|50 4C 54 45&br();固定|(後述)|算出| |チャンク||||| |BGCOLOR(#e0f0ff):~IDATチャンク|データ長による|49 44 41 54&br();固定|Deflateアルゴリズムによる圧縮データ|算出| |BGCOLOR(#c8ffd0):~IENDチャンク|00 00&br();固定|49 45 4E 44&br();固定|(なし)&br();0バイト|AE 42 60 82&br();固定| ***IHDRチャンクのデータ部 |CENTER:|CENTER:|CENTER:|CENTER:|CENTER:|CENTER:|CENTER:|c |画像の幅&br();4バイト|画像の高さ&br();4バイト|ビットの深さ&br();1バイト|カラー・タイプ&br();1バイト|圧縮方式&br();1バイト|フィルター方式&br();1バイト|インタレース方式&br();1バイト| -ビットの深さとカラー・タイプとPLTEチャンク ||||||CENTER:|RIGHT:|RIGHT:|CENTER:|c |>|>|>|>|~ビットの深さ|>|>|CENTER:~カラー・タイプ|~PLTEチャンク| |~|~|~|~|~| |10進数|2進数|~| |1|2|4|8|16|グレースケール|0|0000|不要| ||||8|16|RGB|2|0010|任意| |1|2|4|8||パレット|3|0011|必須| ||||8|16|4 グレースケール+α|4|0100|不要| ||||8|16|6 RGB+α|6|0110|任意| ***PLTEチャンクのデータ部 |CENTER:|CENTER:|CENTER:|CENTER:|CENTER:|CENTER:|CENTER:|CENTER:|CENTER:|CENTER:|c |>|>|パレット・データ&br();3バイト|>|>|パレット・データ&br();3バイト|……|>|>|パパレット・データ&br();3バイト| |赤の値&br();1バイト|緑の値&br();1バイト|青の値&br();1バイト|赤の値&br();1バイト|緑の値&br();1バイト|青の値&br();1バイト|~|赤の値&br();1バイト|緑の値&br();1バイト|青の値&br();1バイト| **参考サイト -[[PNG - Sophia Web>http://homepage2.nifty.com/sophia0/png.html]] -[[PNG ファイルフォーマット - むしゃぺらり の HSP ページ>http://www.setsuki.com/hsp/ext/png.htm]] -[[PNG形式 - Temporary Junkyard>http://www.geocities.co.jp/Playtown-Knight/6845/sd_doc/format_png.html]] -[[わかりやすい PNG の話 for Web - ミケネコ研究所>http://mikeneko.creator.club.ne.jp/~lab/grp/png/p3.html]]
&font(b,144%){CONTENTS} #contents ---- **PNG処理を組み込むためのライブラリ ***DLL -[[imgctl.dll>http://www.ruche-home.net/download/?pack=imgctl]] -[[PNGLoader.dll>http://www.functiont.info/programing/]] ***Delphiコンポーネント -[[PNG Delphi(TPNGImage)>http://pngdelphi.sourceforge.net/]] 英語 -[[TNeoPNG>http://www2.csc.ne.jp/~mci_error/menu_delphi_png.htm]] -[[GLDPNG>http://norg1964.hp.infoseek.co.jp/delphianworld/compo/graphmul.html#GM0040]] 開発・サポート終了 -[[GraphicEx>http://www.soft-gems.net/Graphics.php]] 英語、読み込みのみ **データ概要 |CENTER:~名称|CENTER:~役割|CENTER:~設置|~解説| |BGCOLOR(#f8f8e0):CENTER:|CENTER:|CENTER:||c |BGCOLOR(#ffd8ff):~PNGシグネチャ|識別部|必須|PNGフォーマットであることを示す。| |BGCOLOR(#fff0b8):~IHDRチャンク|ヘッダ|必須|画像サイズなどの基本情報。| |補助チャンク||推奨|色の表示に関する補助データ。| |BGCOLOR(#e8e8d0):~PLTEチャンク|パレット||最大256色分のパレット情報。&br();IHDRチャンクに含まれるカラー・モードによって有無が変わる。| |補助チャンク||推奨|パレットと透過に関する補助データ。| |BGCOLOR(#f8f8ff):追加チャンク||任意|| |BGCOLOR(#e0f0ff):~IDATチャンク|データ|必須|画像データ本体。複数あっても良い。| |補助チャンク||推奨|テキストデータ。どこに設置しても良い。| |BGCOLOR(#f8f8ff):追加チャンク||任意|GIFなどに関するデータ。どこに設置しても良い。| |BGCOLOR(#c8ffd0):~IENDチャンク|終端|必須|PNGファイルの終りを示す。| **データ構造 |BGCOLOR(#f8f8e0):CENTER:|CENTER:|CENTER:|CENTER:|CENTER:|c |BGCOLOR(#ffd8ff):~PNGシグネチャ|>|>|>|89 50 4E 47 0D 0A 1A 0A&br();固定| |(チャンク構造)|データ長&br();4バイト|チャンク名&br();4バイト|データ部&br();データ長に記述されたバイト数|CRC&br();4バイト| |BGCOLOR(#fff0b8):~IHDRチャンク|00 0D&br();固定|49 48 44 52&br();固定|(後述)|算出| |cHRMチャンク||||| |gAMAチャンク||||| |sBITチャンク||||| |sRGBチャンク||||| |iCCPチャンク||||| |BGCOLOR(#e8e8d0):~PLTEチャンク|データ長による|50 4C 54 45&br();固定|(後述)|算出| |チャンク||||| |BGCOLOR(#e0f0ff):~IDATチャンク|データ長による|49 44 41 54&br();固定|(後述)|算出| |BGCOLOR(#c8ffd0):~IENDチャンク|00 00&br();固定|49 45 4E 44&br();固定|(なし)&br();0バイト|AE 42 60 82&br();固定| ***IHDRチャンクのデータ部 |CENTER:|CENTER:|CENTER:|CENTER:|CENTER:|CENTER:|CENTER:|c |画像の幅&br();4バイト|画像の高さ&br();4バイト|ビットの深さ&br();1バイト|カラー・タイプ&br();1バイト|圧縮方式&br();1バイト|フィルター方式&br();1バイト|インタレース方式&br();1バイト| -ビットの深さとカラー・タイプとPLTEチャンク ||||||CENTER:|RIGHT:|RIGHT:|CENTER:|c |>|>|>|>|~ビットの深さ|>|>|CENTER:~カラー・タイプ|~PLTEチャンク| |~|~|~|~|~| |10進数|2進数|~| |1|2|4|8|16|グレースケール|0|0000|不要| ||||8|16|RGB|2|0010|任意| |1|2|4|8||パレット|3|0011|必須| ||||8|16|4 グレースケール+α|4|0100|不要| ||||8|16|6 RGB+α|6|0110|任意| ***PLTEチャンクのデータ部 |CENTER:|CENTER:|CENTER:|CENTER:|CENTER:|CENTER:|CENTER:|CENTER:|CENTER:|CENTER:|c |>|>|パレット・データ&br();3バイト|>|>|パレット・データ&br();3バイト|……|>|>|パパレット・データ&br();3バイト| |赤の値&br();1バイト|緑の値&br();1バイト|青の値&br();1バイト|赤の値&br();1バイト|緑の値&br();1バイト|青の値&br();1バイト|~|赤の値&br();1バイト|緑の値&br();1バイト|青の値&br();1バイト| ***IDATチャンクのデータ部 Deflateアルゴリズムによる圧縮データ。 DeflateアルゴリズムはPNGの他にも、ZIPやGZIPなどに採用されている。詳しい仕様はリンク先参照のこと。 -[[RFC 1951 DEFLATE Compressed Data Format Specification version 1.3>ftp://ftp.rfc-editor.org/in-notes/rfc1951.txt]] 原文 --[[futomi's CGI Cafe>http://www.futomi.com/lecture/japanese/rfc1951.html]]&br();同サイトには他にもzlib関連の日本語訳文あり。 --[[LabVIEW情報交換のページ>http://www.asahi-net.or.jp/~WR9K-OOHS/Pages/Nigel's/Nigel58/deflate.html]] **参考サイト -[[PNG - Sophia Web>http://homepage2.nifty.com/sophia0/png.html]] -[[PNG ファイルフォーマット - むしゃぺらり の HSP ページ>http://www.setsuki.com/hsp/ext/png.htm]] -[[PNG形式 - Temporary Junkyard>http://www.geocities.co.jp/Playtown-Knight/6845/sd_doc/format_png.html]] -[[わかりやすい PNG の話 for Web - ミケネコ研究所>http://mikeneko.creator.club.ne.jp/~lab/grp/png/p3.html]]

表示オプション

横に並べて表示:
変化行の前後のみ表示: