1#!/usr/bin/perl
2#
3# Test writing PNG images
4#
5# Contributed by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
6#
7BEGIN { $| = 1; $test=1; print "1..6\n"; }
8END {print "not ok $test\n" unless $loaded;}
9
10use Image::Magick;
11$loaded=1;
12
13require 't/subroutines.pl';
14
15chdir 't/png' || die 'Cd failed';
16
17#
18# 1) Test Black-and-white, bit_depth=1 PNG
19#
20print( "1-bit grayscale PNG ...\n" );
21testReadWrite( 'input_bw.png', 'output_bw.png', q/quality=>95/,
22  '7d12eaac6f41d3c2947022f382e158ea715e918ce0cd73649ec04db01239c88f');
23
24#
25# 2) Test monochrome image
26#
27++$test;
28print( "8-bit grayscale PNG ...\n" );
29testReadWrite( 'input_mono.png',
30  'output_mono.png', '',
31  'fa43f8c3d45c3efadab6791a6de83b5a303f65e2c1d58e0814803a4846e68593');
32#
33# 3) Test 16-bit Portable Network Graphics
34#
35++$test;
36print( "16-bit grayscale PNG ...\n" );
37testReadWrite( 'input_16.png',
38  'output_16.png',
39  q/quality=>55/,
40  '593d0b64579cbeb07a2f4d5fcc3ab77a320204580442a8b6a95ef141030427de',
41  '2d30a8bed1ae8bd19c8320e861f3140dfc7497ca8a05d249734ab41c71272f08' );
42#
43# 4) Test pseudocolor image
44#
45++$test;
46print( "8-bit indexed-color PNG ...\n" );
47testReadWrite( 'input_256.png',
48  'output_256.png',
49  q/quality=>54/,
50  '5798b9623e5922d3f6c0e87ae76ccc5a69568258e557613f20934f2de6ee2d35' );
51#
52# 5) Test truecolor image
53#
54++$test;
55print( "24-bit Truecolor PNG ...\n" );
56testReadWrite( 'input_truecolor.png',
57  'output_truecolor.png',
58  q/quality=>55/,
59  'eb9adaa26f3cda80273f436ddb92805da2cb88dd032d24380cd48cf05432a326' );
60#
61# 6) Test Multiple-image Network Graphics
62#
63++$test;
64print( "MNG with 24-bit Truecolor PNGs ...\n" );
65testReadWrite( 'input.mng',
66  'output.mng',
67  q/quality=>55/,
68  '65c0eacf6e060b9fb8467eaa0f74e2dcc3ef72d06577f06a506bd0546b01fb61' );
69