testData/pngImages/pngsuite.doc
author Stefan Vogel <sv@exept.de>
Fri, 11 May 2018 16:26:58 +0200
changeset 1930 68ae0c911d46
parent 462 82be8ca9a80c
permissions -rw-r--r--
#BUGFIX by stefan class: RegressionTests::BehaviorLookupObjectTests changed: #testLookupObject_01b #testLookupObject_01c #testLookupObject_02c Fix some testcases
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
462
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
     1
        PNGSUITE
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
     2
----------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
     3
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
     4
        testset for PNG-(de)coders
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
     5
        created by Willem van Schaik
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
     6
------------------------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
     7
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
     8
This is a collection of graphics images created to test the png applications
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
     9
like viewers, converters and editors. All (as far as that is possible)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    10
formats supported by the PNG standard are represented.
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    11
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    12
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    13
1.      INTRODUCTION
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    14
--------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    15
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    16
1.1     PNG capabilities
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    17
------------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    18
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    19
Supported color-types are:
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    20
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    21
        -   grayscale
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    22
        -   grayscale + alpha-channel
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    23
        -   color palettes
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    24
        -   rgb
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    25
        -   rgb + alpha-channel
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    26
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    27
Allowed bitdepths are depending on the color-type, but are in the range
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    28
of 1-bit (grayscale, which is b&w) upto 16-bits.
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    29
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    30
Special features are:
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    31
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    32
        -   interlacing (Adam-7)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    33
        -   gamma-support
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    34
        -   transparency (a poor-man's alpha solution)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    35
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    36
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    37
1.2     File naming
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    38
-------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    39
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    40
Where possible, the testfiles are 32x32 bits icons. This results in a still
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    41
reasonable size of the suite even with a large number of tests. The name
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    42
of each test-file reflects thetype in the following way:
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    43
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    44
        g04i2c08.png
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    45
        || |||+---- bit-depth
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    46
        || ||+----- color-type (descriptive)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    47
        || |+------ color-type (numerical)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    48
        || +------- interlaced or non-interlaced
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    49
        |+--------- parameter of test (in this case gamma-value)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    50
        +---------- test feature (in this case gamma)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    51
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    52
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    53
1.3     PNG formats
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    54
-------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    55
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    56
color-type:
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    57
        0g          -   grayscale
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    58
        2c          -   rgb color
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    59
        3p          -   paletted
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    60
        4a          -   grayscale + alpha channel
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    61
        6a          -   rgb color + alpha channel
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    62
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    63
bit-depth:
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    64
        01          -   with color-type 0, 3
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    65
        02          -   with color-type 0, 3
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    66
        04          -   with color-type 0, 3
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    67
        08          -   with color-type 0, 2, 3, 4, 6
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    68
        16          -   with color-type 0, 2, 4, 6
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    69
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    70
interlacing:
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    71
        n           -   non-interlaced
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    72
        i           -   interlaced
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    73
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    74
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    75
2.      THE TESTS
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    76
-----------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    77
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    78
2.1     Sizes
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    79
-------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    80
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    81
These tests are there to check if your software handles pictures well, with
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    82
picture sizes that are not a multiple of 8. This is particularly important
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    83
with Adam-7 type interlacing. In the same way these tests check if pictures
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    84
size 1x1 and similar are ok.
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    85
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    86
        s01         -   1x1 pixel picture
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    87
        s02         -   2x2 pixel picture
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    88
        s03         -   3x3 pixel picture
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    89
        s04         -   4x4 pixel picture
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    90
        s05         -   5x5 pixel picture
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    91
        s06         -   6x6 pixel picture
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    92
        s07         -   7x7 pixel picture
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    93
        s08         -   8x8 pixel picture
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    94
        s09         -   9x9 pixel picture
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    95
        s32         -   32x32 pixel picture
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    96
        s33         -   33x33 pixel picture
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    97
        s34         -   34x34 pixel picture
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    98
        s35         -   35x35 pixel picture
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
    99
        s36         -   36x36 pixel picture
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   100
        s37         -   37x37 pixel picture
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   101
        s38         -   38x38 pixel picture
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   102
        s39         -   39x39 pixel picture
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   103
        s40         -   40x40 pixel picture
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   104
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   105
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   106
2.2     Background
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   107
------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   108
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   109
When the PNG file contains a background chunck, this should be used for
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   110
pictures with alpha-channel or pictures with a transparency chunck. For
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   111
pictures without this background-chunk, but with alpha, this testset
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   112
assumes a black background.
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   113
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   114
For the images in this test, the left-side should be 100% the background
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   115
color, where moving to the right the color should gradually become the
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   116
image pattern.
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   117
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   118
        bga         -   alpha + no background
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   119
        bgw         -   alpha + white background
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   120
        bgg         -   alpha + gray background
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   121
        bgb         -   alpha + black background
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   122
        bgy         -   alpha + yellow background
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   123
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   124
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   125
2.3     Transparency
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   126
--------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   127
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   128
Transparency should be used together with a background chunk. To test the
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   129
combination of the two the latter 4 tests are there. How to handle pictures
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   130
with transparancy, but without a background, opinions can differ. Here we
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   131
use black, but especially in the case of paletted images, the normal color
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   132
would maybe even be better.
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   133
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   134
        tp0         -   not transparent for reference
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   135
        tp1         -   transparent, but no background chunk
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   136
        tbw         -   transparent + white background
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   137
        tbg         -   transparent + gray background
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   138
        tbb         -   transparent + black background
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   139
        tby         -   transparent + yellow background
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   140
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   141
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   142
2.4     Gamma
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   143
-------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   144
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   145
To test if your viewer handles gamma-correction, 6 testfiles are available.
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   146
They contain corrected color-ramps and a corresponding gamma-chunk with the
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   147
file-gamma value. These are created in such a way that when the viewer does
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   148
the gamma correction right, all 6 should be displayed identical.
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   149
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   150
If they are different, probably the gamma correction is omitted. In that
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   151
case, have a look at the two right coloumns in the 6 pictures. The image
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   152
where those two look the same (when looked from far) reflects the gamma of
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   153
your system. However, because of the limited size of the image, you should
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   154
do more elaborate tests to determine your display gamma.
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   155
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   156
        g03         -   file-gamma = 0.35, for display with gamma = 2.8
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   157
        g04         -   file-gamma = 0.45, for display with gamma = 2.2 (PC)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   158
        g05         -   file-gamma = 0.55, for display with gamma = 1.8 (Mac)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   159
        g07         -   file-gamma = 0.70, for display with gamma = 1.4
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   160
        g10         -   file-gamma = 1.00, for display with gamma = 1.0 (NeXT)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   161
        g25         -   file-gamma = 2.50, for display with gamma = 0.4
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   162
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   163
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   164
2.5     Filtering
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   165
-----------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   166
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   167
PNG uses file-filtering, for optimal compression. Normally the type is of
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   168
filtering is adjusted to the contents of the picture, but here each file
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   169
has the same picture, with a different filtering.
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   170
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   171
        f0          -   no filtering
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   172
        f1          -   sub filtering
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   173
        f2          -   up filtering
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   174
        f3          -   average filtering
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   175
        f4          -   paeth filtering
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   176
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   177
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   178
2.6     Additional palettes
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   179
---------------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   180
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   181
Besides the normal use of paletted images, palette chunks can in combination
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   182
with true-color (and other) images also be used to select color lookup-tables
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   183
when the video system is of limited capabilities. The suggested palette chunk
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   184
is specially created for this purpose.
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   185
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   186
        pp          -   normal palette chunk
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   187
        ps          -   suggested palette chunk
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   188
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   189
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   190
2.7     Ancillary chunks (under construction)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   191
------------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   192
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   193
To test the correct decoding of ancillary chunks, these test-files contain
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   194
one or more examples of these chunkcs. Depending on the type of chunk, a
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   195
number of typical values are selected to test. Unluckily, the testset can
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   196
not contain all combinations, because that would be an endless set.
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   197
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   198
The significant bits are used in files with the next higher bit-depth. They
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   199
indicate howmany bits are valid.
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   200
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   201
        cs3         -   3 significant bits
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   202
        cs5         -   5 significant bits
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   203
        cs8         -   8 significant bits (reference)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   204
        cs3         -   13 significant bits
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   205
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   206
For the physical pixel dimensions, the result of each decoding should be
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   207
a sqare picture. The first (cdf) image is an example of flat (horizontal)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   208
pixels, where the pHYS chunk (x is 1 per unit, y = 4 per unit) must take
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   209
care of the correction. The second is just the other way round. The last
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   210
example uses the unit specifier, for 1000 pixels per meter. This should
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   211
result in a picture of 3.2 cm square.
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   212
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   213
        cdf         -   physical pixel dimensions, 8x32 flat pixels
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   214
        cdh         -   physical pixel dimensions, 32x8 high pixels
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   215
        cds         -   physical pixel dimensions, 8x8 square pixels
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   216
        cdu         -   physical pixel dimensions, with unit-specifier
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   217
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   218
        ccw         -   primary chromaticities and white point
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   219
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   220
        ch1         -   histogram 15 colors
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   221
        ch2         -   histogram 256 colors
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   222
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   223
        cm7         -   modification time, 01-jan-1970
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   224
        cm9         -   modification time, 31-dec-1999
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   225
        cm0         -   modification time, 01-jan-2000
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   226
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   227
In the textual chunk, a number of the standard, and some non-standard
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   228
text items are included.
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   229
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   230
        ct0         -   no textual data
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   231
        ct1         -   with textual data
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   232
        ctz         -   with compressed textual data
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   233
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   234
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   235
2.8     Chunk ordering (still under construction)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   236
----------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   237
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   238
These testfiles will test the obligatory ordering relations between various
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   239
chunk types (not yet) as well as the number of data chunks used for the image.
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   240
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   241
        oi1         -   mother image with 1 idat-chunk
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   242
        oi2         -   image with 2 idat-chunks
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   243
        oi4         -   image with 4 unequal sized idat-chunks
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   244
        oi9         -   all idat-chunks of length one
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   245
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   246
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   247
2.9     Compression level
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   248
-------------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   249
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   250
Here you will find a set of images compressed by zlib, ranging from level 0 
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   251
for no compression at maximum speed upto level 9 for maximum compression.
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   252
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   253
        z00         -   zlib compression level 0 - none
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   254
        z03         -   zlib compression level 3
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   255
        z06         -   zlib compression level 6 - default
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   256
        z09         -   zlib compression level 9 - maximum
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   257
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   258
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   259
2.10     Corrupted files (under construction)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   260
-----------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   261
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   262
All these files are illegal. When decoding they should generate appropriate
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   263
error-messages.
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   264
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   265
        x00         -   empty IDAT chunk
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   266
        xcr         -   added cr bytes
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   267
        xlf         -   added lf bytes
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   268
        xc0         -   color type 0
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   269
        xc9         -   color type 9
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   270
        xd0         -   bit-depth 0
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   271
        xd3         -   bit-depth 3
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   272
        xd9         -   bit-depth 99
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   273
        xcs         -   incorrect IDAT checksum
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   274
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   275
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   276
3.      TEST FILES
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   277
------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   278
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   279
For each of the tests listed above, one or more test-files are created. A
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   280
selection is made (for each test) for the color-type and bitdepth to be used
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   281
for the tests. Further for a number of tests, both a non-interlaced as well
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   282
as an interlaced version is available.
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   283
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   284
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   285
3.1     Basic format test files (non-interlaced)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   286
------------------------------------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   287
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   288
        basn0g01    -   black & white
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   289
        basn0g02    -   2 bit (4 level) grayscale
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   290
        basn0g04    -   4 bit (16 level) grayscale
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   291
        basn0g08    -   8 bit (256 level) grayscale
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   292
        basn0g16    -   16 bit (64k level) grayscale
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   293
        basn2c08    -   3x8 bits rgb color
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   294
        basn2c16    -   3x16 bits rgb color
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   295
        basn3p01    -   1 bit (2 color) paletted
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   296
        basn3p02    -   2 bit (4 color) paletted
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   297
        basn3p04    -   4 bit (16 color) paletted
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   298
        basn3p08    -   8 bit (256 color) paletted
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   299
        basn4a08    -   8 bit grayscale + 8 bit alpha-channel
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   300
        basn4a16    -   16 bit grayscale + 16 bit alpha-channel
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   301
        basn6a08    -   3x8 bits rgb color + 8 bit alpha-channel
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   302
        basn6a16    -   3x16 bits rgb color + 16 bit alpha-channel
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   303
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   304
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   305
3.2     Basic format test files (Adam-7 interlaced)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   306
---------------------------------------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   307
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   308
        basi0g01    -   black & white
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   309
        basi0g02    -   2 bit (4 level) grayscale
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   310
        basi0g04    -   4 bit (16 level) grayscale
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   311
        basi0g08    -   8 bit (256 level) grayscale
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   312
        basi0g16    -   16 bit (64k level) grayscale
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   313
        basi2c08    -   3x8 bits rgb color
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   314
        basi2c16    -   3x16 bits rgb color
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   315
        basi3p01    -   1 bit (2 color) paletted
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   316
        basi3p02    -   2 bit (4 color) paletted
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   317
        basi3p04    -   4 bit (16 color) paletted
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   318
        basi3p08    -   8 bit (256 color) paletted
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   319
        basi4a08    -   8 bit grayscale + 8 bit alpha-channel
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   320
        basi4a16    -   16 bit grayscale + 16 bit alpha-channel
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   321
        basi6a08    -   3x8 bits rgb color + 8 bit alpha-channel
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   322
        basi6a16    -   3x16 bits rgb color + 16 bit alpha-channel
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   323
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   324
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   325
3.3     Sizes test files
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   326
-----------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   327
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   328
        s01n3p01    -   1x1 paletted file, no interlacing
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   329
        s02n3p01    -   2x2 paletted file, no interlacing
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   330
        s03n3p01    -   3x3 paletted file, no interlacing
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   331
        s04n3p01    -   4x4 paletted file, no interlacing
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   332
        s05n3p02    -   5x5 paletted file, no interlacing
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   333
        s06n3p02    -   6x6 paletted file, no interlacing
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   334
        s07n3p02    -   7x7 paletted file, no interlacing
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   335
        s08n3p02    -   8x8 paletted file, no interlacing
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   336
        s09n3p02    -   9x9 paletted file, no interlacing
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   337
        s32n3p04    -   32x32 paletted file, no interlacing
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   338
        s33n3p04    -   33x33 paletted file, no interlacing
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   339
        s34n3p04    -   34x34 paletted file, no interlacing
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   340
        s35n3p04    -   35x35 paletted file, no interlacing
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   341
        s36n3p04    -   36x36 paletted file, no interlacing
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   342
        s37n3p04    -   37x37 paletted file, no interlacing
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   343
        s38n3p04    -   38x38 paletted file, no interlacing
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   344
        s39n3p04    -   39x39 paletted file, no interlacing
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   345
        s40n3p04    -   40x40 paletted file, no interlacing
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   346
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   347
        s01i3p01    -   1x1 paletted file, interlaced
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   348
        s02i3p01    -   2x2 paletted file, interlaced
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   349
        s03i3p01    -   3x3 paletted file, interlaced
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   350
        s04i3p01    -   4x4 paletted file, interlaced
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   351
        s05i3p02    -   5x5 paletted file, interlaced
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   352
        s06i3p02    -   6x6 paletted file, interlaced
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   353
        s07i3p02    -   7x7 paletted file, interlaced
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   354
        s08i3p02    -   8x8 paletted file, interlaced
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   355
        s09i3p02    -   9x9 paletted file, interlaced
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   356
        s32i3p04    -   32x32 paletted file, interlaced
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   357
        s33i3p04    -   33x33 paletted file, interlaced
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   358
        s34i3p04    -   34x34 paletted file, interlaced
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   359
        s35i3p04    -   35x35 paletted file, interlaced
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   360
        s36i3p04    -   36x36 paletted file, interlaced
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   361
        s37i3p04    -   37x37 paletted file, interlaced
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   362
        s38i3p04    -   38x38 paletted file, interlaced
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   363
        s39i3p04    -   39x39 paletted file, interlaced
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   364
        s40i3p04    -   40x40 paletted file, interlaced
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   365
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   366
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   367
3.4     Background test files (with alpha)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   368
------------------------------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   369
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   370
        bgai4a08    -   8 bit grayscale, alpha, no background chunk, interlaced
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   371
        bgai4a16    -   16 bit grayscale, alpha, no background chunk, interlaced
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   372
        bgan6a08    -   3x8 bits rgb color, alpha, no background chunk
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   373
        bgan6a16    -   3x16 bits rgb color, alpha, no background chunk
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   374
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   375
        bgbn4a08    -   8 bit grayscale, alpha, black background chunk
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   376
        bggn4a16    -   16 bit grayscale, alpha, gray background chunk
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   377
        bgwn6a08    -   3x8 bits rgb color, alpha, white background chunk
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   378
        bgyn6a16    -   3x16 bits rgb color, alpha, yellow background chunk
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   379
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   380
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   381
3.5     Transparency (and background) test files
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   382
------------------------------------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   383
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   384
        tp0n1g08    -   not transparent for reference (logo on gray)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   385
        tbbn1g04    -   transparent, black background chunk
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   386
        tbwn1g16    -   transparent, white background chunk
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   387
        tp0n2c08    -   not transparent for reference (logo on gray)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   388
        tbrn2c08    -   transparent, red background chunk
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   389
        tbgn2c16    -   transparent, green background chunk
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   390
        tbbn2c16    -   transparent, blue background chunk
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   391
        tp0n3p08    -   not transparent for reference (logo on gray)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   392
        tp1n3p08    -   transparent, but no background chunk
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   393
        tbbn3p08    -   transparent, black background chunk
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   394
        tbgn3p08    -   transparent, light-gray background chunk
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   395
        tbwn3p08    -   transparent, white background chunk
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   396
        tbyn3p08    -   transparent, yellow background chunk
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   397
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   398
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   399
3.6     Gamma test files
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   400
------------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   401
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   402
        g03n0g16    -   grayscale, file-gamma = 0.35
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   403
        g04n0g16    -   grayscale, file-gamma = 0.45
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   404
        g05n0g16    -   grayscale, file-gamma = 0.55
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   405
        g07n0g16    -   grayscale, file-gamma = 0.70
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   406
        g10n0g16    -   grayscale, file-gamma = 1.00
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   407
        g25n0g16    -   grayscale, file-gamma = 2.50
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   408
        g03n2c08    -   color, file-gamma = 0.35
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   409
        g04n2c08    -   color, file-gamma = 0.45
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   410
        g05n2c08    -   color, file-gamma = 0.55
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   411
        g07n2c08    -   color, file-gamma = 0.70
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   412
        g10n2c08    -   color, file-gamma = 1.00
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   413
        g25n2c08    -   color, file-gamma = 2.50
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   414
        g03n3p04    -   paletted, file-gamma = 0.35
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   415
        g04n3p04    -   paletted, file-gamma = 0.45
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   416
        g05n3p04    -   paletted, file-gamma = 0.55
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   417
        g07n3p04    -   paletted, file-gamma = 0.70
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   418
        g10n3p04    -   paletted, file-gamma = 1.00
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   419
        g25n3p04    -   paletted, file-gamma = 2.50
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   420
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   421
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   422
3.7     Filtering test files
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   423
----------------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   424
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   425
        f00n0g08    -   grayscale, no interlacing, filter-type 0
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   426
        f01n0g08    -   grayscale, no interlacing, filter-type 1
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   427
        f02n0g08    -   grayscale, no interlacing, filter-type 2
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   428
        f03n0g08    -   grayscale, no interlacing, filter-type 3
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   429
        f04n0g08    -   grayscale, no interlacing, filter-type 4
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   430
        f00n2c08    -   color, no interlacing, filter-type 0
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   431
        f01n2c08    -   color, no interlacing, filter-type 1
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   432
        f02n2c08    -   color, no interlacing, filter-type 2
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   433
        f03n2c08    -   color, no interlacing, filter-type 3
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   434
        f04n2c08    -   color, no interlacing, filter-type 4
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   435
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   436
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   437
3.8     Additional palette chunk test files
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   438
-------------------------------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   439
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   440
        pp0n2c16    -   six-cube palette-chunk in true-color image
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   441
        pp0n6a08    -   six-cube palette-chunk in true-color+alpha image
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   442
        ps1n0g08    -   six-cube suggested palette (1 byte) in grayscale image
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   443
        ps1n2c16    -   six-cube suggested palette (1 byte) in true-color image
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   444
        ps2n0g08    -   six-cube suggested palette (2 bytes) in grayscale image
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   445
        ps2n2c16    -   six-cube suggested palette (2 bytes) in true-color image
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   446
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   447
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   448
3.9     Ancillary chunks test files
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   449
-----------------------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   450
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   451
        cs5n2c08    -   color, 5 significant bits
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   452
        cs8n2c08    -   color, 8 significant bits (reference)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   453
        cs3n2c16    -   color, 13 significant bits
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   454
        cs3n3p08    -   paletted, 3 significant bits
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   455
        cs5n3p08    -   paletted, 5 significant bits
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   456
        cs8n3p08    -   paletted, 8 significant bits (reference)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   457
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   458
        cdfn2c08    -   physical pixel dimensions, 8x32 flat pixels
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   459
        cdhn2c08    -   physical pixel dimensions, 32x8 high pixels
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   460
        cdsn2c08    -   physical pixel dimensions, 8x8 square pixels
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   461
        cdun2c08    -   physical pixel dimensions, 1000 pixels per 1 meter
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   462
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   463
        ccwn2c08    -   chroma chunk w:0.3127,0.3290 r:0.64,0.33 g:0.30,0.60 b:0.15,0.06
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   464
        ccwn3p08    -   chroma chunk w:0.3127,0.3290 r:0.64,0.33 g:0.30,0.60 b:0.15,0.06
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   465
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   466
        ch1n3p04    -   histogram 15 colors
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   467
        ch2n3p08    -   histogram 256 colors
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   468
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   469
        cm7n0g04    -   modification time, 01-jan-1970 00:00:00
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   470
        cm9n0g04    -   modification time, 31-dec-1999 23:59:59
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   471
        cm0n0g04    -   modification time, 01-jan-2000 12:34:56
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   472
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   473
        ct0n0g04    -   no textual data
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   474
        ct1n0g04    -   with textual data
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   475
        ctzn0g04    -   with compressed textual data
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   476
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   477
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   478
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   479
3.10    Chunk ordering
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   480
----------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   481
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   482
        oi1n0g16    -   grayscale mother image with 1 idat-chunk
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   483
        oi2n0g16    -   grayscale image with 2 idat-chunks
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   484
        oi4n0g16    -   grayscale image with 4 unequal sized idat-chunks
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   485
        oi9n0g16    -   grayscale image with all idat-chunks length one
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   486
        oi1n2c16    -   color mother image with 1 idat-chunk
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   487
        oi2n2c16    -   color image with 2 idat-chunks
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   488
        oi4n2c16    -   color image with 4 unequal sized idat-chunks
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   489
        oi9n2c16    -   color image with all idat-chunks length one
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   490
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   491
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   492
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   493
3.11    Compression level
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   494
-------------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   495
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   496
        z00n2c08    -   color, no interlacing, compression level 0 (none)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   497
        z03n2c08    -   color, no interlacing, compression level 3
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   498
        z06n2c08    -   color, no interlacing, compression level 6 (default)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   499
        z09n2c08    -   color, no interlacing, compression level 9 (maximum)
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   500
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   501
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   502
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   503
3.12     Currupted files
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   504
-----------------------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   505
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   506
        x00n0g01    -   empty 0x0 grayscale file
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   507
        xcrn0g04    -   added cr bytes
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   508
        xlfn0g04    -   added lf bytes
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   509
        xc0n0c08    -   color type 0
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   510
        xc9n0c08    -   color type 9
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   511
        xd0n2c00    -   bit-depth 0
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   512
        xd3n2c03    -   bit-depth 3
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   513
        xd9n2c99    -   bit-depth 99
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   514
        xcsn2c08    -   incorrect IDAT checksum
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   515
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   516
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   517
--------
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   518
    (c) Willem van Schaik
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   519
        willem@schaik.com
82be8ca9a80c *** empty log message ***
sr
parents:
diff changeset
   520
        Singapore, October 1996