PNG format groups non-image data in "Chunks". ImageGear represents simpler chunks by single metadata items, and more complex chunks by subtrees.
There are two main PNG metadata levels in ImageGear:
PNG Metadata Level
| Name |
Id |
Type |
Value Type |
Value |
Value Length |
Ignored on save |
| <PNG chunk names> |
<PNG chunk ids> |
<PNG chunk type> |
|
|
|
|
For <PNG chunk names >, <PNG chunk ids> and <PNG Chunk types> see See PNG chunks metadata level. section.
PNG Chunks Metadata Level
The following PNG non-image chunk levels are supported by ImageGear:
PNG Header Chunk Metadata PNG Level
| Name |
Id |
Type |
Value Type |
Value |
Value Length |
Ignored on save |
| "IHDR" |
0x49484452 |
Tree |
|
|
|
|
Header Chunk Level
| Name |
Id |
Type |
Value Type |
Value |
Value Length |
Ignored on save |
| "Width" |
0x49484452 |
Leaf |
UINT32 |
|
1 |
TRUE |
| "Height" |
0x49484452 |
Leaf |
UINT32 |
|
1 |
TRUE |
| "BitDepth" |
0x49484452 |
Leaf |
UINT8 |
|
1 |
TRUE |
| "ColorType" |
0x49484452 |
Leaf |
UINT8 |
|
1 |
TRUE |
| "CompressionType" |
0x49484452 |
Leaf |
UINT8 |
|
1 |
TRUE |
| "FilterType" |
0x49484452 |
Leaf |
UINT8 |
|
1 |
TRUE |
| "InterlaceType" |
0x49484452 |
Leaf |
UINT8 |
|
1 |
TRUE |
Physical Dimension Chunk Metadata PNG Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "pHYs" |
0x70485973 |
Tree |
|
|
|
|
Physical Dimension Chunk Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "XAxis" |
0x70485973 |
Leaf |
UINT32 |
|
1 |
FALSE |
| "YAxis" |
0x70485973 |
Leaf |
UINT32 |
|
1 |
FALSE |
| "UnitSpecifier" |
0x70485973 |
Leaf |
UINT8 |
|
1 |
FALSE |
Transparency Chunk Metadata PNG Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "tRNS" |
0x74524e53 |
Leaf |
UINT8 or
UINT16 |
|
Variable |
FALSE |
Gamma Chunk Metadata PNG Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "gAMA" |
0x67414d41 |
Leaf |
UINT32 |
|
1 |
FALSE |
Primary Chromaticities Chunk Metadata PNG Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "cHRM" |
0x6348524d |
Tree |
|
|
|
|
Primary Chromaticities Chunk Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "WhitePoint" |
0x6348524d |
Tree |
|
|
|
|
| "x" |
0x6348524d |
Leaf |
UINT32 |
|
1 |
FALSE |
| "y" |
0x6348524d |
Leaf |
UINT32 |
|
1 |
FALSE |
| "Red" |
0x6348524d |
Tree |
|
|
|
|
| "x" |
0x6348524d |
Leaf |
UINT32 |
|
1 |
FALSE |
| "y" |
0x6348524d |
Leaf |
UINT32 |
|
1 |
FALSE |
| "Green" |
0x6348524d |
Tree |
|
|
|
|
| "x" |
0x6348524d |
Leaf |
UINT32 |
|
1 |
FALSE |
| "y" |
0x6348524d |
Leaf |
UINT32 |
|
1 |
FALSE |
| "Blue" |
0x6348524d |
Tree |
|
|
|
|
| "x" |
0x6348524d |
Leaf |
UINT32 |
|
1 |
FALSE |
| "y" |
0x6348524d |
Leaf |
UINT32 |
|
1 |
FALSE |
sRGB Chunk Metadata PNG Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "sRGB" |
0x73524742 |
Leaf |
UINT32 |
|
1 |
FALSE |
ICC Profile Chunk Metadata PNG Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "iCCP" |
0x70485973 |
Tree |
|
|
|
|
ICC Profile Chunk Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "ProfileName" |
0x70485973 |
Leaf |
STRING |
|
Variable |
FALSE |
| "ProfileData" |
0x70485973 |
Leaf |
RAW_DATA |
|
Variable |
FALSE |
Background Chunk Metadata PNG Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "bKGD" |
0x624b4744 |
Leaf |
UINT8 or UINT16 |
|
Variable |
FALSE |
Significant Bits Chunk Metadata PNG Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "sBIT" |
0x73424954 |
Leaf |
UINT8 |
|
Variable |
FALSE |
Suggested Palette Chunk Metadata PNG Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "sPLT" |
0x73504c54 |
Tree |
|
|
|
|
Suggested Palette Chunk Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "PaletteName" |
0x73504c54 |
Leaf |
STRING |
|
Variable |
TRUE |
| "SampleDepth" |
0x73504c54 |
Leaf |
UINT8 |
|
1 |
FALSE |
| "PaletteEntryCount" |
0x73504c54 |
Leaf |
UINT16 |
<N> |
1 |
FALSE |
| Palette entry level 0 |
<Entry No.>
|
Tree |
|
|
|
|
| ... |
| Palette entry level n |
<Entry No.>
|
Tree |
|
|
|
|
Palette Entry Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "Red" |
<Entry No.> |
Leaf |
UINT8 or UINT16 |
|
1 |
FALSE |
| "Green" |
<Entry No.> |
Leaf |
UINT8 or UINT16 |
|
1 |
FALSE |
| "Blue" |
<Entry No.> |
Leaf |
UINT8 or UINT16 |
|
1 |
FALSE |
| "Alpha" |
<Entry No.> |
Leaf |
UINT8 or UINT16 |
|
1 |
FALSE |
| "Frequency" |
<Entry No.> |
Leaf |
UINT16 |
|
1 |
FALSE |
Palette Histogram Chunk Metadata PNG Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "hIST" |
0x68495354 |
Leaf |
UINT16 |
|
Variable |
FALSE |
Modified Time Chunk Metadata PNG Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "tIME" |
0x74494d45 |
Tree |
|
|
|
|
Modified Time Chunk Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "Year" |
0x74494d45 |
Leaf |
UINT16 |
|
1 |
FALSE |
| "Month" |
0x74494d45 |
Leaf |
UINT8 |
|
1 |
FALSE |
| "Day" |
0x74494d45 |
Leaf |
UINT8 |
|
1 |
FALSE |
| "Hour" |
0x74494d45 |
Leaf |
UINT8 |
|
1 |
FALSE |
| "Minute" |
0x74494d45 |
Leaf |
UINT8 |
|
1 |
FALSE |
| "Second" |
0x74494d45 |
Leaf |
UINT8 |
|
1 |
FALSE |
Text Chunk Metadata PNG Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "tEXt" |
0x74455874 |
Tree |
|
|
|
|
Text Chunk Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "Keyword" |
0x74455874 |
Leaf |
STRING |
|
Variable |
FALSE |
| "Text" |
0x74455874 |
Leaf |
STRING |
|
Variable |
FALSE |
Compressed Textual Data Chunk Metadata PNG Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "zTXt" |
0x7a545874 |
Tree |
|
|
|
|
Compressed Textual Data Chunk Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "Keyword" |
0x7a545874 |
Leaf |
STRING |
|
Variable |
FALSE |
| "CompressionMethod" |
0x7a545874 |
Leaf |
UINT8 |
|
1 |
FALSE |
| "Text" |
0x7a545874 |
Leaf |
STRING |
|
Variable |
FALSE |
International Textual Data Chunk Metadata PNG Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "zTXt" |
0x69545874 |
Tree |
|
|
|
|
International Textual Data Chunk Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "Keyword" |
0x69545874 |
Leaf |
STRING |
|
Variable |
FALSE |
| "CompressionFlag" |
0x69545874 |
Leaf |
BOOL |
|
|
|
| "CompressionMethod" |
0x69545874 |
Leaf |
UINT8 |
|
1 |
FALSE |
| "LanguageTag" |
0x69545874 |
Leaf |
STRING |
|
|
|
| "TranslatedKeyword" |
0x69545874 |
Leaf |
RAW_DATA |
|
|
|
| "Text" |
0x69545874 |
Leaf |
RAW_DATA |
|
Variable |
FALSE |
Calibration of Pixel Values Chunk Metadata PNG Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "pCAL" |
0x7043414c |
Tree |
|
|
|
|
Calibration of Pixel Values Chunk Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "CalibrationName" |
0x7043414c |
Leaf |
STRING |
|
Variable |
FALSE |
| "OriginalZero(x0)" |
0x7043414c |
Leaf |
INT32 |
|
1 |
FALSE |
| "OriginalMax(x1)" |
0x7043414c |
Leaf |
INT32 |
|
1 |
FALSE |
| "EquationType" |
0x7043414c |
Leaf |
UINT8 |
|
1 |
FALSE |
| "NumberOfParameters" |
0x7043414c |
Leaf |
UINT8 |
<N> |
Variable |
FALSE |
| "UnitName" |
0x7043414c |
Leaf |
STRING |
|
Variable |
FALSE |
| "CalibrationParameter" |
0 |
Leaf |
STRING |
|
Variable |
FALSE |
| ... |
| "CalibrationParameter" |
<N> - 1 |
Leaf |
STRING |
|
Variable |
FALSE |
Physical Scale Chunk Metadata PNG Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "sCAL" |
0x7343414c |
Tree |
|
|
|
|
Physical Scale Chunk Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "UnitSpecifier" |
0x7343414c |
Leaf |
UINT8 |
|
1 |
FALSE |
| "PixelWidth" |
0x7343414c |
Leaf |
STRING |
|
Variable |
FALSE |
| "PixelHeigt" |
0x7343414c |
Leaf |
STRING |
|
Variable |
FALSE |
GIF Application Extension Chunk Metadata PNG Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "gIFx" |
0x67494678 |
Tree |
|
|
|
|
GIF Application Extension Chunk Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "ApplicationIdentifier" |
0x67494678 |
Leaf |
STRING |
|
Variable |
FALSE |
| "AuthenticationCode" |
0x67494678 |
Leaf |
UINT8 |
|
1 |
FALSE |
| "ApplicationData" |
0x67494678 |
Leaf |
RAW_DATA |
|
Variable |
FALSE |
GIF Graphic Control Extension Chunk Metadata PNG Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "gIFg" |
0x67494674 |
Tree |
|
|
|
|
GIF Graphic Control Extension Chunk Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "DisposalMethod" |
0x67494674 |
Leaf |
UINT8 |
|
1 |
FALSE |
| "UserInputFlag" |
0x67494674 |
Leaf |
UINT8 |
|
1 |
FALSE |
| "DelayTime" |
0x67494674 |
Leaf |
UINT16 |
|
1 |
FALSE |
Image Offset Chunk Metadata PNG Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "oFFs" |
0x6f464673 |
Tree |
|
|
|
|
Image Offset Chunk Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| "XPosition" |
0x6f464673 |
Leaf |
UINT32 |
|
1 |
FALSE |
| "YPosition" |
0x6f464673 |
Leaf |
UINT32 |
|
1 |
FALSE |
| "UnitSpecifier" |
0x6f464673 |
Leaf |
UINT8 |
|
1 |
FALSE |
The Rest Chunk Metadata
The rest chunk data are passed as raw data.
PNG Level
| Name |
ID |
Type |
Value Type |
Value |
Value Length |
Read Only |
| <Chunk Name> |
<Chunk ID> |
Leaf |
RAW_DATA |
|
Variable |
FALSE |
<Chunk Name> is a string representation of the chunk type value.
<Chunk ID> is a binary representation of the chunk type value.