char
*hex_signature;
- QuantumAny
- pixel,
- range;
+ double
+ pixel;
register const Quantum
*p;
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
signature_info=AcquireSignatureInfo();
signature=AcquireStringInfo(image->columns*GetPixelChannels(image)*
- sizeof(QuantumAny));
+ sizeof(pixel));
pixels=GetStringInfoDatum(signature);
- range=GetQuantumRange(image->depth);
image_view=AcquireCacheView(image);
for (y=0; y < (ssize_t) image->rows; y++)
{
traits=GetPixelChannelMapTraits(image,(PixelChannel) i);
if (traits == UndefinedPixelTrait)
continue;
- pixel=ScaleQuantumToAny(p[i],range);
- for (j=0; j < (ssize_t) sizeof(QuantumAny); j++)
- *q++=(unsigned char) ((pixel >> (j*8)) & 0xff);
+ if ((traits & UpdatePixelTrait) == 0)
+ continue;
+ pixel=QuantumScale*p[i];
+ for (j=0; j < (ssize_t) sizeof(pixel); j++)
+ *q++=(unsigned char) (&pixel)[j];
}
p+=GetPixelChannels(image);
}
$image->BlobToImage( @blob );
if ($image->Get('signature') ne
- 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7')
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33')
{ print "not ok $test\n"; }
else
{ print "ok $test\n"; }
# Test reading BZip compressed MIFF
#
testRead( 'input.miff',
- 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7' );
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33' );
#
# 2) Test reading BZip stream-compressed MIFF (.bz2 extension)
print("Reading BZip stream-compressed MIFF (.bz2 extension) ...\n");
++$test;
testRead( 'input.miff.bz2',
- 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7' );
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33' );
testReadWrite( 'input.miff',
'output.miff',
q/compression=>'BZip'/,
- 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7' );
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33' );
$test = 0; # Quench PERL compliaint
++$test;
testGetAttribute('input.miff','signature',
- 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7');
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33');
++$test;
testGetAttribute('input.miff','texture',undef);
testMontage( q//,
q/background=>'#696e7e', label=>''/,
'977b812cb06e16d0ee7da6c80a9470cb85c2d33ba33f5919f26b05058f0eb177',
- 'fea8915dc67163d86e93a6e611c900185f82bdc5fc67c7a3e53a4b76639aaa56',
+ '4aac8269bd31defb14971e475d23e0774c5fc929a60babddf8c3ecbcb01bfabd',
'8de04216e6f60ad3bf63d5a2c54386cb824579e1c4a677af726e0306e0c7fb09');
#
testMontage( q//,
q/background=>'#696e7e', label=>'', geometry=>'90x80+5+5>', gravity=>'Center'/,
'9a3f16a11fa4173f43642e7759070b32ce66a21c72312a7c99ed5dab711dc377',
- '633267a42b30c1a5709d8929ef9ad24e6612f28e10299315a0ff386ccba7ec9a',
+ 'a1825dab28dcb3f3fad641a2ec688199ad4c43253f5ea3fb13fafffe49a74818',
'2a381bc2cc7dc751c95df0f6a88c5f04232e82d06094b65b3909f488e4347f93');
#
testMontage( q//,
q/background=>'#696e7e', label=>'', geometry=>'90x80+5+5>', gravity=>'NorthWest'/,
'1ace55dbec2814d4d12e911f6ab21e0eac769cf12fbdcf516376f356222b74e1',
- '9d4854b04b3072c4f371a55289ed0583c5fab1a52758e514008462bfb890be41',
+ 'd41d7fb9cf59ab0d8f86545b4561fd267f555c0ab434a23d9b4d52e7b55fe64b',
'f3be8f6f4ecabc14d6da8a3d8b6a2e369ad005d045f381df6f24ca2410406380');
#
testMontage( q//,
q/background=>'#696e7e', label=>'', geometry=>'90x80+5+5>', gravity=>'North'/,
'02840dc5ac270f2e26422b8c90c5e5c3af81fd6e6739e9554977115e152a6872',
- '67ee49456bfc3500aac4a2425b7b45c9cd32d8948232a97fabe62713ddd7f859',
+ '0c04c47f966d7769e99f99b0be4d8d1679e42a71543ce24efd2296afa9491073',
'abd7f530c44e953ac799a04846a3eef613d0ab7b08aa92bb6cabe8abf275d5b6');
#
testMontage( q//,
q/background=>'#696e7e', label=>'', geometry=>'90x80+5+5>', gravity=>'NorthEast'/,
'c5a10e80cb4f3b1c866d03e8cad4154f1139758ec86ffeef4fe2a802ac118ae2',
- '66b8ac0676dbf6c48703cb16422e75174ee676003cacfd58de546a697075b469',
+ '7110c0432bfd90f2173e547dbefe4c693757e7bf6bf731c8a97f72c71c723830',
'bb35ddfaab468d869f2a3bafb16b3751015f2bb94e87438c48c7b294831d2bb8');
#
testMontage( q//,
q/background=>'#696e7e', label=>'', geometry=>'90x80+5+5>', gravity=>'West'/,
'60f394bc620fba50b97dfe55c6026eed616a26ceee7a97fa66485b1853182ff8',
- '46eed993d02f46dc553478fcdda6c0632b4d1161d478d5a9409b2925a8624c09',
+ '2a6f10fc376136ec74d53d7dd52c60e420edf851548377868bfb7f47d0e8a1e6',
'09bb863d97be728ee75411ff87f1d09a5ef272b03fd23edca07b692239ce9346');
#
testMontage( q//,
q/background=>'#696e7e', label=>'', geometry=>'90x80+5+5>', gravity=>'East'/,
'48e3b6f793ef83ff702a4a164a6d91f1e3711ff9d7eee9f2eb7f8ce704783355',
- '2285ea36a814317b190c43012f509a70a779cac61afc0dcd0a54f089cbd6b284',
+ '6a1517b10841950912b5a4e9fb852559268a3c64e86d6b391024c0e3ea7cc3e3',
'932cf84bf09b180ed7e01976dabf6ba7088fc374c539991ea42600ae40cedcbd');
#
testMontage( q//,
q/background=>'#696e7e', label=>'', geometry=>'90x80+5+5>', gravity=>'SouthWest'/,
'a7bdd145d3a98e1ba42ccff175ef3ff91c04ccff47cab1b0c8ae8ad21315f680',
- '6e4b779635b9dbd54490aa6a71aa45c4414c51554e449ccd88570ced42975b1b',
+ '6df59cabd0ccb84da56cf4a13516cfd8fc0bc215c438c8ee5bdbe6db82d52830',
'ef5b118bfa9dfbed332c1cf349b8cc792280f535a1dcba053e878657cb060198');
#
testMontage( q//,
q/background=>'#696e7e', label=>'', geometry=>'90x80+5+5>', gravity=>'South'/,
'35c31352e889dc7912ddb0ae23af45c3776f36bc77a874b751d2594415cee1e6',
- 'b72b1f24b49d9a3bb0507f3e5d5588b0c11cde499fab27d02df41d36dd87f099',
+ '227064c0fdd574d6c659a71bc24591d67fd604b4bb44c5466774446d9c7592f1',
'3fd57e40caef146868326f177db65265e8970c88ce20ba099152a1c5e8027e1f');
#
testMontage( q//,
q/background=>'#696e7e', label=>'', geometry=>'90x80+5+5>', gravity=>'SouthEast'/,
'd46836aea9de6ca6441a856b103edbe1bee6ceeeab189ac8bdf61bac35556774',
- '192a8ee4da1c5d62d14ab7837378d06fec13c37cb097d7ee00f97534f86d8304',
+ '1b1eadf70f68f9ddea212b75d68d3109fcafe4e7db988cb90e148ca33be4691f',
'c94a37024d7f8ff664c5aae0977ed6ff5d3aa92f46425b09b179c2ab32494e0c');
#
q/background=>'#696e7e', label=>'', tile=>'4x4', geometry=>'90x80+3+3>', frame=>'8x10',
borderwidth=>'0', gravity=>'Center', background=>'gray'/,
'5110ae8eb21ded2d8e6b6d3f5cc80317a6c58304f84731810a318bd76473427a',
- 'ed4b38de6a8bc7408585a5b38efb677d6877244a80cff9ca2d95dbacdaf8df3f',
+ 'a2b51a92bfa701b5121930caba4c39fca5de2d5d539570667b6a14aed1a1d0bd',
'7e6adf7d0f1dd962c66e1be4069d0b808fc5ba81d00cb473080e6b742e209cc3');
#
q/background=>'#696e7e', label=>'', tile=>'4x4', geometry=>'90x80+6+6>', frame=>'8x10',
borderwidth=>'0', gravity=>'Center', shadow=>'True',background=>'gray'/,
'61645a8c80a7220a4260133a2b1ae720bf2755f2ed880a3fef0e9453641f5b79',
- '9b79aaef1d4914dccd7f3b56fec025452878fbece244ab6613c4e17e6e284bec',
+ 'e4e2f293481151f49888cca594b38beaa37e168ba1efa6a590e166521490b338',
'105eede4ff37f8067fed104dd42feea9eff899caf872e7f11316d33ca02ecbf6');
#
q/background=>'#696e7e', label=>'', tile=>'4x4', geometry=>'90x80+6+6>', frame=>'8x10',
borderwidth=>'0', gravity=>'Center', shadow=>'True', texture=>'granite:'/,
'4655b59218afbd58d24a9ecf162a42868b3de40ecc8e9f9671dccf8b17e1aa33',
- 'bb8c28e16449eeb4c69b81ab809a9f83e7fb3cc78b0b6a0d07c2964a49865a6c',
+ 'e4e2f293481151f49888cca594b38beaa37e168ba1efa6a590e166521490b338',
'd2413f59b630f2fd5ad4416f441cdb3b839765c4da8f2fe4210ceecefc0c8716');
#
q/background=>'#696e7e', label=>'', tile=>'4x4', geometry=>'90x80+6+6>', mode=>'Unframe',
borderwidth=>'0', gravity=>'Center', background=>'gray'/,
'5b5b6e7667055dee87a282cac637bceeec605644d8063972f79a01b2c07f9872',
- 'd313d29183c31fb1aa91b0fb44ef04c8cd7ad6f7648a553fe0ec3c6ba7872fb4',
+ '2b108aac04c0d339dbae55161a050dd788d2fd09a35f2ad5a0810b7c546ada44',
'438478e6380519b065e4e24e33bab0e6dd6c4ab5a8c6449e22537fd55269babb');
#
q/background=>'#696e7e', label=>'', tile=>'4x4', geometry=>'90x80+6+6>', mode=>'Unframe',
borderwidth=>'5', gravity=>'Center', background=>'gray'/,
'fadebb098990a6230d30c55f45c4f1a31effc70055d4eb66c8f46c913257e1fb',
- '9468d6ff4312772656e980874be56ae69cf97946e78461de1f67e96c6c76675c',
+ 'eb2db2e5e0558563d814da22c8ca9be993a3217744eaba53d6921b223c6e6f3f',
'535b6d2dd565ee5d01c3500569e60112812f5cd4d88525d528d35a5d02bbe681');
#
q/label=>'', tile=>'4x4', geometry=>'90x80+6+6>', mode=>'UnFrame',
borderwidth=>'5', gravity=>'Center', background=>'gray'/,
'fadebb098990a6230d30c55f45c4f1a31effc70055d4eb66c8f46c913257e1fb',
- '9468d6ff4312772656e980874be56ae69cf97946e78461de1f67e96c6c76675c',
+ 'eb2db2e5e0558563d814da22c8ca9be993a3217744eaba53d6921b223c6e6f3f',
'535b6d2dd565ee5d01c3500569e60112812f5cd4d88525d528d35a5d02bbe681');
#
q/background=>'#696e7e', label=>'', tile=>'16x1', geometry=>'90x80+0+0>', mode=>'Unframe',
borderwidth=>'0', gravity=>'Center', background=>'gray'/,
'bead47d8f45327614e1a91f3537443317f59eebb960839f613365a1231b163ff',
- 'ecc4b83e0b76129f1635c2e866bc641cce6a5d65a6c89bc497b5b81e4bb0f3b6',
+ '26ba497f978db17009459907d6634abe0084f4dc26f2edc4435e15087a5a7918',
'ad05ecff14b56693e2785eb4b6f06215c215eb1309eb19591d9380027aacfe21');
#
testMontage( q//,
q/background=>'#696e7e', label=>'', tile=>'4x4', geometry=>'90x80>', mode=>'Concatenate'/,
'73dba1cf6a2077fca9c3d6a4f82ee5aa4481d64481423cffbb676b92e3f3c7dd',
- '108b50e6f8d5155f6c6f60dfe939e83ec465a917b3d8ec6fa1419d27ffa3cdb3',
+ '3f42ab1a8a19594ab6a0c7990a35a34d92d9fff2a4ed59c5202a660d27c3ef36',
'1fdca151dfe00fdc106832696815eff00b7e32a5fb0af64b41cb08610661880e');
#
# 19) Test concatenated thumbnail Montage (concatentated by setting params to zero)
q/background=>'#696e7e', label=>'', tile=>'4x4', geometry=>'+0+0', mode=>'Unframe', shadow=>'False',
borderwidth=>'0', background=>'gray'/,
'73dba1cf6a2077fca9c3d6a4f82ee5aa4481d64481423cffbb676b92e3f3c7dd',
- '108b50e6f8d5155f6c6f60dfe939e83ec465a917b3d8ec6fa1419d27ffa3cdb3',
+ '3f42ab1a8a19594ab6a0c7990a35a34d92d9fff2a4ed59c5202a660d27c3ef36',
'1fdca151dfe00fdc106832696815eff00b7e32a5fb0af64b41cb08610661880e');
# Motion Picture Experts Group file interchange format (version 2)
#
testRead( 'input.m2v',
- '11fabe4dc3114c91da9d4f905bc69a2ab30608b9a550c0d775f0be06f3b39cd0' );
+ '7be20fa2335d08a150a3fd5ccf13f7e6be6d518171b91abcaa9655c43ffe3ce1' );
#
# Motion Picture Experts Group file interchange format
#
++$test;
testRead( 'input.mpg',
- '113b91329ec4ad7d147e910e5fd8340d06db419ce6d0258de8993ec4673fc7bc' );
+ '386be746ec6c4946becd01c6b62b8f5deefd0f3214f07e82cf8014f2d02f3779' );
1;
# 1) Test Monochrome PNG
#
testRead( 'input_mono.png',
- 'cda5c7a8ba8250de624af6dc825ad6772ebba3a7fa6da756c5b1ca228b62f8ac' );
+ '4c8ba149f3b22a9d846e72e8317834871f5fb173799620d4d059e62f69576846' );
#
# 2) Test 256 color pseudocolor PNG
#
++$test;
testRead( 'input_256.png',
- '066c0047c6e7e3f4cda1c86224441bfd5f522b5805b2a9190dcfa5294d94e4bd' );
+ 'c45a7f8b2d978f5d92f70ddc40e0a7fec30dc3243facdb293f2245952ed68de1' );
#
# 3) Test TrueColor PNG
#
++$test;
testRead( 'input_truecolor.png',
- '55913611798c087b9300b14d3baeda08a142910ad120379a9308a6b8c8b2f6e8' );
+ '610257576e33bcbf79aa1edb7f56ad2b5cfa1d9b7413db632d0b29f412a7e194' );
#
# 4) Test Multiple-image Network Graphics
#
++$test;
testRead( 'input.mng',
- '030111e35491010550814468283f13a8d3d621efb0031bae005bd86e9d0038c5' );
+ 'ece756f9de4c618819cf88c8561630518a9cf39ce09a81bf7c78445d9f00e09d' );
#
# 5) Test 16-bit Portable Network Graphics
++$test;
testRead( 'input_16.png',
'6b6761c8108b1616e9411c4ef2564505715a37b93e86d2c824c9a4bca31bf47b',
- '82f48df83eec5bacbe2c38f13ce7e2219e5e318f4b2974d928d0ea7f7cec65fd');
+ '106f0647ae10a6516b1ab2968038161e287ef40d1b22ca047531ed768e594ef1');
#
print( "1-bit grayscale PNG ...\n" );
testRead( 'input_bw.png',
- '349c2ff9310d578051e40e80d42cfc36ca29ba93e353df175219f7448da5eeee' );
+ '5ace96fd545d2f4479f2e7a8f6f8f6cb1fd7cd277ae35559dffc825fd2a670f6' );
#
# 2) Test Monochrome PNG
++$test;
print( "8-bit grayscale PNG ...\n" );
testRead( 'input_mono.png',
- 'cda5c7a8ba8250de624af6dc825ad6772ebba3a7fa6da756c5b1ca228b62f8ac' );
+ '4c8ba149f3b22a9d846e72e8317834871f5fb173799620d4d059e62f69576846' );
#
# 3) Test 16-bit Portable Network Graphics
print( "16-bit grayscale PNG ...\n" );
testRead( 'input_16.png',
'6b6761c8108b1616e9411c4ef2564505715a37b93e86d2c824c9a4bca31bf47b',
- '82f48df83eec5bacbe2c38f13ce7e2219e5e318f4b2974d928d0ea7f7cec65fd' );
+ '106f0647ae10a6516b1ab2968038161e287ef40d1b22ca047531ed768e594ef1' );
#
# 4) Test 256 color pseudocolor PNG
#
++$test;
print( "8-bit indexed-color PNG ...\n" );
testRead( 'input_256.png',
- '066c0047c6e7e3f4cda1c86224441bfd5f522b5805b2a9190dcfa5294d94e4bd' );
+ 'c45a7f8b2d978f5d92f70ddc40e0a7fec30dc3243facdb293f2245952ed68de1' );
#
# 5) Test TrueColor PNG
++$test;
print( "24-bit Truecolor PNG ...\n" );
testRead( 'input_truecolor.png',
- '55913611798c087b9300b14d3baeda08a142910ad120379a9308a6b8c8b2f6e8' );
+ '610257576e33bcbf79aa1edb7f56ad2b5cfa1d9b7413db632d0b29f412a7e194' );
#
# 6) Test Multiple-image Network Graphics
++$test;
print( "MNG with 24-bit Truecolor PNGs...\n" );
testRead( 'input.mng',
- '030111e35491010550814468283f13a8d3d621efb0031bae005bd86e9d0038c5' );
+ 'ece756f9de4c618819cf88c8561630518a9cf39ce09a81bf7c78445d9f00e09d' );
testReadWrite( 'input_256.png',
'output_256.png',
q/quality=>54/,
- '066c0047c6e7e3f4cda1c86224441bfd5f522b5805b2a9190dcfa5294d94e4bd' );
+ 'c45a7f8b2d978f5d92f70ddc40e0a7fec30dc3243facdb293f2245952ed68de1' );
#
# 2) Test truecolor image
testReadWrite( 'input_truecolor.png',
'output_truecolor.png',
q/quality=>55/,
- '55913611798c087b9300b14d3baeda08a142910ad120379a9308a6b8c8b2f6e8' );
+ '610257576e33bcbf79aa1edb7f56ad2b5cfa1d9b7413db632d0b29f412a7e194' );
#
# 3) Test monochrome image
++$test;
testReadWrite( 'input_mono.png',
'output_mono.png', '',
- 'cda5c7a8ba8250de624af6dc825ad6772ebba3a7fa6da756c5b1ca228b62f8ac' );
+ '4c8ba149f3b22a9d846e72e8317834871f5fb173799620d4d059e62f69576846' );
#
# 4) Test Multiple-image Network Graphics
testReadWrite( 'input.mng',
'output.mng',
q/quality=>55/,
- '030111e35491010550814468283f13a8d3d621efb0031bae005bd86e9d0038c5' );
+ 'ece756f9de4c618819cf88c8561630518a9cf39ce09a81bf7c78445d9f00e09d' );
#
# 5) Test 16-bit Portable Network Graphics
'output_16.png',
q/quality=>55/,
'fa6b164245b385b3dea5764074be2c959a503dde90ecb1d4ba9c76a46bb8e4e6',
- '82f48df83eec5bacbe2c38f13ce7e2219e5e318f4b2974d928d0ea7f7cec65fd');
+ '106f0647ae10a6516b1ab2968038161e287ef40d1b22ca047531ed768e594ef1');
#
print( "1-bit grayscale PNG ...\n" );
testReadWrite( 'input_bw.png', 'output_bw.png', q/quality=>95/,
- '349c2ff9310d578051e40e80d42cfc36ca29ba93e353df175219f7448da5eeee');
+ '5ace96fd545d2f4479f2e7a8f6f8f6cb1fd7cd277ae35559dffc825fd2a670f6');
#
# 2) Test monochrome image
print( "8-bit grayscale PNG ...\n" );
testReadWrite( 'input_mono.png',
'output_mono.png', '',
- 'cda5c7a8ba8250de624af6dc825ad6772ebba3a7fa6da756c5b1ca228b62f8ac');
+ '4c8ba149f3b22a9d846e72e8317834871f5fb173799620d4d059e62f69576846');
#
# 3) Test 16-bit Portable Network Graphics
#
'output_16.png',
q/quality=>55/,
'fa6b164245b385b3dea5764074be2c959a503dde90ecb1d4ba9c76a46bb8e4e6',
- '82f48df83eec5bacbe2c38f13ce7e2219e5e318f4b2974d928d0ea7f7cec65fd' );
+ '106f0647ae10a6516b1ab2968038161e287ef40d1b22ca047531ed768e594ef1' );
#
# 4) Test pseudocolor image
#
testReadWrite( 'input_256.png',
'output_256.png',
q/quality=>54/,
- '066c0047c6e7e3f4cda1c86224441bfd5f522b5805b2a9190dcfa5294d94e4bd' );
+ 'c45a7f8b2d978f5d92f70ddc40e0a7fec30dc3243facdb293f2245952ed68de1' );
#
# 5) Test truecolor image
#
testReadWrite( 'input_truecolor.png',
'output_truecolor.png',
q/quality=>55/,
- '55913611798c087b9300b14d3baeda08a142910ad120379a9308a6b8c8b2f6e8' );
+ '610257576e33bcbf79aa1edb7f56ad2b5cfa1d9b7413db632d0b29f412a7e194' );
#
# 6) Test Multiple-image Network Graphics
#
testReadWrite( 'input.mng',
'output.mng',
q/quality=>55/,
- '030111e35491010550814468283f13a8d3d621efb0031bae005bd86e9d0038c5' );
+ 'ece756f9de4c618819cf88c8561630518a9cf39ce09a81bf7c78445d9f00e09d' );
#
print("Monochrome ...\n");
testRead ( 'input_mono.tiff',
- '83175f7bcc43fb71212dee254c85e355c18bcd25f35d3b9caba66fff7341fa64' );
+ '57fc672e7e231d3f92793d9b2073132def273f4be3115bcbed1c49a1c3131222' );
#
# 2) Test reading PseudoColor (16 color)
++$test;
print("PseudoColor (16 color)...\n");
testRead( 'input_16.tiff',
- 'c33901f8a62814e6c2c1ecca0c7d1c95b3ecb089f4815ab630652e25cae85b44' );
+ '4c8ba149f3b22a9d846e72e8317834871f5fb173799620d4d059e62f69576846' );
#
# 3) Test reading PseudoColor (16 color + matte channel)
++$test;
print("PseudoColor (16 color + matte channel)...\n");
testRead( 'input_16_matte.tiff',
- 'c33901f8a62814e6c2c1ecca0c7d1c95b3ecb089f4815ab630652e25cae85b44' );
+ '4c8ba149f3b22a9d846e72e8317834871f5fb173799620d4d059e62f69576846' );
#
# 4) Test reading PseudoColor (256 color)
++$test;
print("PseudoColor (256 color) ...\n");
testRead( 'input_256.tiff',
- '08fdfd88b1eb09649ef126c1fe5a8c5b958eb941653daa0b3615f1b9db9966df' );
+ '48113b47a70a1d8dc046327cb9c799ed265e5d76a5eb0495d142015c4bd44b23' );
#
# 5) Test reading PseudoColor (256 color + matte channel)
++$test;
print("PseudoColor (256 color + matte channel) ...\n");
testRead( 'input_256_matte.tiff',
- 'f28f9d3620babcaf84c61ffbf3f92e83fcc0bc3d5904ac7b8a1318e8d796859f' );
+ 'f50dea7da00ff27cc5fd5bc66bf0146b68b207ea7df919f72c4ccb02cb40f759' );
#
# 6) Test reading PseudoColor using contiguous planar packing
++$test;
print("PseudoColor (256 color) contiguous planes ...\n");
testRead( 'input_256_planar_contig.tiff',
- '08fdfd88b1eb09649ef126c1fe5a8c5b958eb941653daa0b3615f1b9db9966df' );
+ '48113b47a70a1d8dc046327cb9c799ed265e5d76a5eb0495d142015c4bd44b23' );
#
# 7) Test reading PseudoColor using seperate planes
++$test;
print("PseudoColor (256 color) seperate planes ...\n");
testRead( 'input_256_planar_separate.tiff',
- '08fdfd88b1eb09649ef126c1fe5a8c5b958eb941653daa0b3615f1b9db9966df' );
+ '48113b47a70a1d8dc046327cb9c799ed265e5d76a5eb0495d142015c4bd44b23' );
#
# 8) Test Reading TrueColor (8-bit)
++$test;
print("TrueColor (8-bit) image ...\n");
testRead( 'input_truecolor.tiff',
- '4002f066656ca5cdb12afa067769bfa432b1d45d0278d1c558cf4a64638eaa6e' );
+ '359291f6da6c9118bef6d75604be979b3267e4df0716e1bfc357f13cafd0acb8' );
#
# 9) Test Reading TrueColor (16-bit)
print("TrueColor (16-bit) image ...\n");
testRead( 'input_truecolor_16.tiff',
'0adb551c0d521ce9e502e7242040463543f1c84b55c6349d3aa4cbd093b1a410',
- '725e5f79cd2dea9fd6000df596a1e63790e8ecf48a4a7c303324c176e88c5757' );
+ '4c5c847c9e40a3ffc082f9fabadc29f87279008c9092fa749a9504c61f5e172a' );
#
# 10) Test Reading 8-bit TrueColor Tiled (32x32 tiles)
++$test;
print("TrueColor (8-bit) tiled image, 32x32 tiles ...\n");
testRead( 'input_truecolor_tiled32x32.tiff',
- '4002f066656ca5cdb12afa067769bfa432b1d45d0278d1c558cf4a64638eaa6e' );
+ '359291f6da6c9118bef6d75604be979b3267e4df0716e1bfc357f13cafd0acb8' );
#
# 11) Test Reading 8-bit TrueColor Tiled (8 rows per strip)
++$test;
print("TrueColor (8-bit) stripped, image, 8 rows per strip ...\n");
testRead( 'input_truecolor_stripped.tiff',
- '4002f066656ca5cdb12afa067769bfa432b1d45d0278d1c558cf4a64638eaa6e' );
+ '359291f6da6c9118bef6d75604be979b3267e4df0716e1bfc357f13cafd0acb8' );
#
# 12) Test Reading Grayscale 4-bit
++$test;
print("Grayscale (4-bit) ...\n");
testRead( 'input_gray_4bit.tiff',
- 'aff256464aeb39a8fd5498d7e296362a11b827f6700b7ad1342b8be8a6304303');
+ 'a3ae7f6908bb538751f59565dd17f28f83201620ca3ccc8a87a388b3d4c50232');
#
# 13) Test Reading Grayscale 8-bit
++$test;
print("Grayscale (8-bit) ...\n");
testRead( 'input_gray_8bit.tiff',
- '46542d79a23def43c94f4b07452e2d8466abd73a949569596d23bb7130b850f5');
+ '63783c30b21fca4cc94bb6c02ae37df722224a466d997db39bb7ddece5e236a8');
#
# 14) Test Reading Grayscale 8-bit + matte
++$test;
print("Grayscale (8-bit + matte) ...\n");
testRead( 'input_gray_8bit_matte.tiff',
- '49929da2adbe49c525a7e7f2210187ad496d14d0268c80cddcd201e389fe8171' );
+ '44cb1a46bd5a147f446b18cea8b07cfdf31acdc856029f95d91193add5c11b85' );
#
# 15) Test Reading Grayscale 12-bit
print("Grayscale (12-bit) ...\n");
testRead( 'input_gray_12bit.tiff',
'c29789db13969ddbfc9b588066d6578d87628566a60ffc33dbd43e6c4f747f51',
- '0f2c8dfde42ee59deddd126853a8d6f69f6d517cebd8fab28c35836d21227064',
- '0f2c8dfde42ee59deddd126853a8d6f69f6d517cebd8fab28c35836d21227064');
+ '92fd45c62bf2641e0dd33eb05d215c9c15b5c5856aaa4a758bcde6d65ea16e4f',
+ '92fd45c62bf2641e0dd33eb05d215c9c15b5c5856aaa4a758bcde6d65ea16e4f');
#
# 16) Test Reading Grayscale 16-bit
print("Grayscale (16-bit) ...\n");
testRead( 'input_gray_16bit.tiff',
'7cc1f9e909cd671d0a4d32018fa885997a43de202eafdf4e0bec3dbff9f24a4e',
- '5ebfb789a15df77bdd86342617710eb2f685a0ab32886aa4818719c9a84683ed',
- '5ebfb789a15df77bdd86342617710eb2f685a0ab32886aa4818719c9a84683ed');
+ '63783c30b21fca4cc94bb6c02ae37df722224a466d997db39bb7ddece5e236a8',
+ '63783c30b21fca4cc94bb6c02ae37df722224a466d997db39bb7ddece5e236a8');
testReadWrite( 'input_16.tiff',
'output_16.tiff',
q//,
- 'c33901f8a62814e6c2c1ecca0c7d1c95b3ecb089f4815ab630652e25cae85b44');
+ '4c8ba149f3b22a9d846e72e8317834871f5fb173799620d4d059e62f69576846');
#
# 2) Test 8-bit pseudocolor image
testReadWrite( 'input_256.tiff',
'output_256.tiff',
q//,
- '08fdfd88b1eb09649ef126c1fe5a8c5b958eb941653daa0b3615f1b9db9966df');
+ '48113b47a70a1d8dc046327cb9c799ed265e5d76a5eb0495d142015c4bd44b23');
#
# 3) Test 4-bit pseudocolor + matte channel image
testReadWrite( 'input_16_matte.tiff',
'output_16_matte.tiff',
q//,
- 'c33901f8a62814e6c2c1ecca0c7d1c95b3ecb089f4815ab630652e25cae85b44' );
+ '4c8ba149f3b22a9d846e72e8317834871f5fb173799620d4d059e62f69576846' );
#
# 4) Test 8-bit pseudocolor + matte channel image
testReadWrite( 'input_256_matte.tiff',
'output_256_matte.tiff',
q//,
- 'f28f9d3620babcaf84c61ffbf3f92e83fcc0bc3d5904ac7b8a1318e8d796859f' );
+ 'f50dea7da00ff27cc5fd5bc66bf0146b68b207ea7df919f72c4ccb02cb40f759' );
#
# 5) Test truecolor image
testReadWrite( 'input_truecolor.tiff',
'output_truecolor.tiff',
q/quality=>55/,
- '4002f066656ca5cdb12afa067769bfa432b1d45d0278d1c558cf4a64638eaa6e' );
+ '359291f6da6c9118bef6d75604be979b3267e4df0716e1bfc357f13cafd0acb8' );
#
# 6) Test monochrome image
testReadWrite( 'input_mono.tiff',
'output_mono.tiff',
q//,
- '83175f7bcc43fb71212dee254c85e355c18bcd25f35d3b9caba66fff7341fa64' );
+ '57fc672e7e231d3f92793d9b2073132def273f4be3115bcbed1c49a1c3131222' );
#
# 7) Test gray 4 bit image
testReadWrite( 'input_gray_4bit.tiff',
'output_gray_4bit.tiff',
q//,
- 'aff256464aeb39a8fd5498d7e296362a11b827f6700b7ad1342b8be8a6304303' );
+ 'a3ae7f6908bb538751f59565dd17f28f83201620ca3ccc8a87a388b3d4c50232' );
#
# 8) Test gray 8 bit image
testReadWrite( 'input_gray_8bit.tiff',
'output_gray_8bit.tiff',
q//,
- '46542d79a23def43c94f4b07452e2d8466abd73a949569596d23bb7130b850f5' );
+ '63783c30b21fca4cc94bb6c02ae37df722224a466d997db39bb7ddece5e236a8' );
#
# 9) Test gray 4 bit image (with matte channel)
testReadWrite( 'input_gray_4bit_matte.tiff',
'output_gray_4bit_matte.tiff',
q//,
- '91a3cb9734b88a1c35cfc439493115818d7f49a2fc7bcadec52b2489da0118f9' );
+ '44cb1a46bd5a147f446b18cea8b07cfdf31acdc856029f95d91193add5c11b85' );
#
# 10) Test gray 8 bit image (with matte channel)
testReadWrite( 'input_gray_8bit_matte.tiff',
'output_gray_8bit_matte.tiff',
q//,
- '49929da2adbe49c525a7e7f2210187ad496d14d0268c80cddcd201e389fe8171' );
+ '44cb1a46bd5a147f446b18cea8b07cfdf31acdc856029f95d91193add5c11b85' );
testReadWrite( 'AVS:input.avs',
'AVS:output.avs',
q//,
- 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7');
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33');
print("Microsoft Windows bitmap image file ...\n");
++$test;
testReadWrite( 'BMP:input.bmp',
'BMP:output.bmp',
q//,
- '5a25065144213cd0230b7572bd9aef0e447c23a0622193a94ae62c9895c44bf7');
+ '32d82b4ab7a2527d0b886ccdd60990f6f7e4a411181337bd033760256c0d596c');
print("Microsoft Windows 24-bit bitmap image file ...\n");
++$test;
testReadWrite( 'BMP:input.bmp24',
'BMP:output.bmp24',
q//,
- 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7');
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33');
print("ZSoft IBM PC multi-page Paintbrush file ...\n");
testReadWrite( 'DCX:input.dcx',
'DCX:output.dcx',
q//,
- 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7');
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33');
print("Microsoft Windows 3.X DIB file ...\n");
++$test;
testReadWrite( 'DIB:input.dib',
'DIB:output.dib',
q//,
- 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7');
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33');
print("Flexible Image Transport System ...\n");
++$test;
testReadWrite( 'FITS:input.fits',
'FITS:output.fits',
q//,
- '8365d1242126cb96856a9b4ade0bfad06900b4f42c3f05d589030c1240f37827' );
+ 'f28470f09857477a372a743665071cdc325613b963481d94b6dceabe292dd469' );
print("CompuServe graphics interchange format ...\n");
++$test;
testReadWrite( 'GIF:input.gif',
'GIF:output.gif',
q//,
- '5a25065144213cd0230b7572bd9aef0e447c23a0622193a94ae62c9895c44bf7');
+ '32d82b4ab7a2527d0b886ccdd60990f6f7e4a411181337bd033760256c0d596c');
print("CompuServe graphics interchange format (1987) ...\n");
++$test;
testReadWrite( 'GIF87:input.gif87',
'GIF87:output.gif87',
q//,
- '0138e1e5c9a7ed1604ec5bbe8c22378b84fcd9abb8c36e984b051f9efc14d54e');
+ 'd8938f29cbd56aa164bf8265f385d9ec872be75fe08401601b68eee159df8cd9');
print("Magick image file format ...\n");
++$test;
testReadWrite( 'MIFF:input.miff',
'MIFF:output.miff',
q//,
- 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7');
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33');
print("MTV Raytracing image format ...\n");
++$test;
testReadWrite( 'MTV:input.mtv',
'MTV:output.mtv',
q//,
- 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7');
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33');
print("Portable bitmap format (black and white), ASCII format ...\n");
++$test;
testReadWrite( 'PBM:input_p1.pbm',
'PBM:output_p1.pbm',
q/compression=>'None'/,
- '83175f7bcc43fb71212dee254c85e355c18bcd25f35d3b9caba66fff7341fa64');
+ '57fc672e7e231d3f92793d9b2073132def273f4be3115bcbed1c49a1c3131222');
print("Portable bitmap format (black and white), binary format ...\n");
++$test;
testReadWrite( 'PBM:input_p4.pbm',
'PBM:output_p4.pbm',
q//,
- '83175f7bcc43fb71212dee254c85e355c18bcd25f35d3b9caba66fff7341fa64');
+ '57fc672e7e231d3f92793d9b2073132def273f4be3115bcbed1c49a1c3131222');
print("ZSoft IBM PC Paintbrush file ...\n");
++$test;
testReadWrite( 'PCX:input.pcx',
'PCX:output.pcx',
q//,
- 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7');
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33');
print("Portable graymap format (gray scale), ASCII format ...\n");
++$test;
testReadWrite( 'PGM:input_p2.pgm',
'PGM:output_p2.pgm',
q/compression=>'None'/,
- '39bfd79b101f69842dfd0ee9dec46569147a22dc1557b84fadb60adb5b873f37');
+ 'e2e1b058a09c2b9c0c696996163911dcce325def773cb2a1554c6f21a0391ff7');
print("Apple Macintosh QuickDraw/PICT file ...\n");
++$test;
testReadWrite( 'PICT:input.pict',
'PICT:output.pict',
q//,
- 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7');
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33');
print("Portable pixmap format (color), ASCII format ...\n");
++$test;
testReadWrite( 'PPM:input_p3.ppm',
'PPM:output_p3.ppm',
q/compression=>'None'/,
- 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7');
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33');
print("Portable graymap format (gray scale), binary format ...\n");
++$test;
testReadWrite( 'PGM:input_p5.pgm',
'PGM:output_p5.pgm',
q//,
- '39bfd79b101f69842dfd0ee9dec46569147a22dc1557b84fadb60adb5b873f37');
+ 'e2e1b058a09c2b9c0c696996163911dcce325def773cb2a1554c6f21a0391ff7');
print("Portable pixmap format (color), binary format ...\n");
++$test;
testReadWrite( 'PPM:input_p6.ppm',
'PPM:output_p6.ppm',
q//,
- 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7');
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33');
print("Adobe Photoshop bitmap file ...\n");
++$test;
testReadWrite( 'PSD:input.psd',
'PSD:output.psd',
q//,
- 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7' );
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33' );
print("Irix RGB image file ...\n");
++$test;
testReadWrite( 'SGI:input.sgi',
'SGI:output.sgi',
q//,
- 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7');
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33');
print("SUN 1-bit Rasterfile ...\n");
++$test;
testReadWrite( 'SUN:input.im1',
'SUN:output.im1',
q//,
- '8922c9505ece06295a015d23e28da3727c3bc7ab22593f98e0fc8784aa16d0c2');
+ '31d166e543d44963cc8a500212ae60c1c6f040fac3117748bcd54174727b45e1');
print("SUN 8-bit Rasterfile ...\n");
++$test;
testReadWrite( 'SUN:input.im8',
'SUN:output.im8',
q//,
- 'd28c7104a30c8986c34b98a4209de5d4b8a79911a9b5c46037e62c8a2063a09c');
+ '88528b9fde504a6388f0db5a351e3373ea15607e18a0c2d0e7e0fe4c851cce10');
print("SUN True-Color Rasterfile ...\n");
++$test;
testReadWrite( 'SUN:input.im24',
'SUN:output.im24',
q//,
- 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7',
- 'c44fd9695c066798a9dc010010cdff2921b95b67753164f3179352bafee98d10',
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33',
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33',
'5a5f94a626ee1945ab1d4d2a621aeec4982cccb94e4d68afe4c784abece91b3e');
print("Truevision Targa image file ...\n");
testReadWrite( 'TGA:input.tga',
'TGA:output.tga',
q//,
- 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7');
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33');
print("Khoros Visualization image file ...\n");
++$test;
'VIFF:output.viff',
q//,
'7f2c98e7ce98983509580eaeb3bb6a420e3f358b39fcec4cdd96982ae1e21882',
- 'ede99c6be1a9d82cd2f37b87dfd7cd5369391ff42b566ff1d5491f58e60637cb',
+ '409e646b6ba024c597a6b2c34754bf23713857e367047e7ea15615d8bd0fd028',
'aa4a6154f3c314d99c257280faf9097f3863a132ec8bddbc3b68209ce2c19487');
print("WBMP (Wireless Bitmap (level 0) image) ...\n");
'WBMP:output.wbmp',
q//,
'b7b682361e82d9d7cf2bed34f76af87576b97590b12d76b961104e53ee18ee74',
- '1a3a1f20e9126794a0347d4920c497b5b203767d1a507db728901dc66874ea0d',
+ 'd386466607cfcec0625943f277454d66cce1d17696d482f50103a25a04bd1070',
'd818195f73f8d5db624c8f87a706bbcb3179dbb7a7f08abbad5b12cd97de8fe6');
print("X Windows system bitmap (black and white only) ...\n");
testReadWrite( 'XBM:input.xbm',
'XBM:output.xbm',
q//,
- '4cc91a24ddcbe4a9563b1ca063f765ec1ca4514cc3e3ba3e710f1226e49a8dd5');
+ '31d166e543d44963cc8a500212ae60c1c6f040fac3117748bcd54174727b45e1');
print("X Windows system pixmap file (color) ...\n");
++$test;
testReadWrite( 'XPM:input.xpm',
'XPM:output.xpm',
q//,
- 'fa51c37680393251b7011d1825df7a5ed4e0f78168afb4d6d5c59aa4d45ade12');
+ '88528b9fde504a6388f0db5a351e3373ea15607e18a0c2d0e7e0fe4c851cce10');
print("CMYK format ...\n");
++$test;
'70x46',
8,
q//,
- '1d9a2a8b39e8fc584ce24166e4e8a1544a5302b90fd84ff069d0d01c525f3462');
+ '7e704fc1a99118630a92374ba27adf5baf69f30019016be2ed70eac79629e8b4');
print("GRAY format ...\n");
++$test;
'70x46',
8,
q//,
- '8365d1242126cb96856a9b4ade0bfad06900b4f42c3f05d589030c1240f37827' );
+ 'f28470f09857477a372a743665071cdc325613b963481d94b6dceabe292dd469' );
print("RGB format ...\n");
++$test;
'70x46',
8,
q//,
- 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7' );
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33' );
print("RGBA format ...\n");
'70x46',
8,
q//,
- '1252b2f3facc0fb67fcfacfc01938843566acbb9480bbe077a4c6f6af528eb4e' );
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33' );
1;
testReadWrite( 'XWD:input.xwd',\r
'XWD:output.xwd',\r
q//,\r
- 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7');\r
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33');\r
# 1) Test reading Zip compressed MIFF
#
testRead( 'input.miff',
- 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7' );
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33' );
#
# 3) Test reading Zip stream-compressed MIFF (.gz extension)
print("Reading Zip stream-compressed MIFF (.gz extension) ...\n");
++$test;
testRead( 'input.miff.gz',
- 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7' );
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33' );
testReadWrite( 'input.miff',
'output.miff',
q/compression=>'Zip'/,
- 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7' );
+ '6a4a257921582768b774aeeac549b7c0c0b51f665395eddf921cce53a0ad2a33' );
$test = 0; # Quench PERL compliaint