#!/usr/bin/perl # Copyright 1999-2021 ImageMagick Studio LLC, a non-profit organization # dedicated to making software imaging solutions freely available. # # You may not use this file except in compliance with the License. You may # obtain a copy of the License at # # https://imagemagick.org/script/license.php # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # # Test writing formats supported directly by ImageMagick # BEGIN { $| = 1; $test=1; print "1..32\n"; } END {print "not ok $test\n" unless $loaded;} use Image::Magick; $loaded=1; require 't/subroutines.pl'; chdir 't' || die 'Cd failed'; print("AVS X image file ...\n"); testReadWrite( 'AVS:input.avs', 'AVS:output.avs', q//, 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7'); print("Microsoft Windows bitmap image file ...\n"); ++$test; testReadWrite( 'BMP:input.bmp', 'BMP:output.bmp', q//, '5a25065144213cd0230b7572bd9aef0e447c23a0622193a94ae62c9895c44bf7'); print("Microsoft Windows 24-bit bitmap image file ...\n"); ++$test; testReadWrite( 'BMP:input.bmp24', 'BMP:output.bmp24', q//, 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7'); print("ZSoft IBM PC multi-page Paintbrush file ...\n"); ++$test; testReadWrite( 'DCX:input.dcx', 'DCX:output.dcx', q//, 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7'); print("Microsoft Windows 3.X DIB file ...\n"); ++$test; testReadWrite( 'DIB:input.dib', 'DIB:output.dib', q//, 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7'); print("Flexible Image Transport System ...\n"); ++$test; testReadWrite( 'FITS:input.fits', 'FITS:output.fits', q//, 'f44631f7eec8311b2e0d8d2567ace65e55f6cf42378e777bccb705160587228b' ); print("CompuServe graphics interchange format ...\n"); ++$test; testReadWrite( 'GIF:input.gif', 'GIF:output.gif', q//, '5a25065144213cd0230b7572bd9aef0e447c23a0622193a94ae62c9895c44bf7' ); print("CompuServe graphics interchange format (1987) ...\n"); ++$test; testReadWrite( 'GIF87:input.gif87', 'GIF87:output.gif87', q//, '0138e1e5c9a7ed1604ec5bbe8c22378b84fcd9abb8c36e984b051f9efc14d54e' ); print("Magick image file format ...\n"); ++$test; testReadWrite( 'MIFF:input.miff', 'MIFF:output.miff', q//, 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7'); print("MTV Raytracing image format ...\n"); ++$test; testReadWrite( 'MTV:input.mtv', 'MTV:output.mtv', q//, 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7'); print("Portable bitmap format (black and white), ASCII format ...\n"); ++$test; testReadWrite( 'PBM:input_p1.pbm', 'PBM:output_p1.pbm', q/compression=>'None'/, '83175f7bcc43fb71212dee254c85e355c18bcd25f35d3b9caba66fff7341fa64'); print("Portable bitmap format (black and white), binary format ...\n"); ++$test; testReadWrite( 'PBM:input_p4.pbm', 'PBM:output_p4.pbm', q//, '83175f7bcc43fb71212dee254c85e355c18bcd25f35d3b9caba66fff7341fa64'); print("ZSoft IBM PC Paintbrush file ...\n"); ++$test; testReadWrite( 'PCX:input.pcx', 'PCX:output.pcx', q//, 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7'); print("Portable graymap format (gray scale), ASCII format ...\n"); ++$test; testReadWrite( 'PGM:input_p2.pgm', 'PGM:output_p2.pgm', q/compression=>'None'/, '61b18b993c5c4b6c9bd97e1cc95cc756e7b7b840df234ea046b0c5c0fb2930c9'); print("Apple Macintosh QuickDraw/PICT file ...\n"); ++$test; testReadWrite( 'PICT:input.pict', 'PICT:output.pict', q//, 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7'); print("Portable pixmap format (color), ASCII format ...\n"); ++$test; testReadWrite( 'PPM:input_p3.ppm', 'PPM:output_p3.ppm', q/compression=>'None'/, 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7'); print("Portable graymap format (gray scale), binary format ...\n"); ++$test; testReadWrite( 'PGM:input_p5.pgm', 'PGM:output_p5.pgm', q//, '61b18b993c5c4b6c9bd97e1cc95cc756e7b7b840df234ea046b0c5c0fb2930c9'); print("Portable pixmap format (color), binary format ...\n"); ++$test; testReadWrite( 'PPM:input_p6.ppm', 'PPM:output_p6.ppm', q//, 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7'); print("Adobe Photoshop bitmap file ...\n"); ++$test; testReadWrite( 'PSD:input.psd', 'PSD:output.psd', q//, 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7' ); print("Irix RGB image file ...\n"); ++$test; testReadWrite( 'SGI:input.sgi', 'SGI:output.sgi', q//, 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7'); print("SUN 1-bit Rasterfile ...\n"); ++$test; testReadWrite( 'SUN:input.im1', 'SUN:output.im1', q//, '8922c9505ece06295a015d23e28da3727c3bc7ab22593f98e0fc8784aa16d0c2'); print("SUN 8-bit Rasterfile ...\n"); ++$test; testReadWrite( 'SUN:input.im8', 'SUN:output.im8', q//, 'd28c7104a30c8986c34b98a4209de5d4b8a79911a9b5c46037e62c8a2063a09c'); print("SUN True-Color Rasterfile ...\n"); ++$test; testReadWrite( 'SUN:input.im24', 'SUN:output.im24', q//, 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7', 'c44fd9695c066798a9dc010010cdff2921b95b67753164f3179352bafee98d10', '5a5f94a626ee1945ab1d4d2a621aeec4982cccb94e4d68afe4c784abece91b3e'); print("Truevision Targa image file ...\n"); ++$test; testReadWrite( 'TGA:input.tga', 'TGA:output.tga', q//, 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7'); print("Khoros Visualization image file ...\n"); ++$test; testReadWrite( 'VIFF:input.viff', 'VIFF:output.viff', q//, '7f2c98e7ce98983509580eaeb3bb6a420e3f358b39fcec4cdd96982ae1e21882', 'ede99c6be1a9d82cd2f37b87dfd7cd5369391ff42b566ff1d5491f58e60637cb', 'aa4a6154f3c314d99c257280faf9097f3863a132ec8bddbc3b68209ce2c19487'); print("WBMP (Wireless Bitmap (level 0) image) ...\n"); ++$test; testReadWrite( 'WBMP:input.wbmp', 'WBMP:output.wbmp', q//, 'b7b682361e82d9d7cf2bed34f76af87576b97590b12d76b961104e53ee18ee74', '1a3a1f20e9126794a0347d4920c497b5b203767d1a507db728901dc66874ea0d', 'd818195f73f8d5db624c8f87a706bbcb3179dbb7a7f08abbad5b12cd97de8fe6'); print("X Windows system bitmap (black and white only) ...\n"); ++$test; testReadWrite( 'XBM:input.xbm', 'XBM:output.xbm', q//, '4cc91a24ddcbe4a9563b1ca063f765ec1ca4514cc3e3ba3e710f1226e49a8dd5'); print("X Windows system pixmap file (color) ...\n"); ++$test; testReadWrite( 'XPM:input.xpm', 'XPM:output.xpm', q//, 'd28c7104a30c8986c34b98a4209de5d4b8a79911a9b5c46037e62c8a2063a09c'); print("CMYK format ...\n"); ++$test; testReadWriteSized( 'CMYK:input_70x46.cmyk', 'CMYK:output_70x46.cmyk', '70x46', 8, q//, '1d9a2a8b39e8fc584ce24166e4e8a1544a5302b90fd84ff069d0d01c525f3462'); print("GRAY format ...\n"); ++$test; testReadWriteSized( 'GRAY:input_70x46.gray', 'GRAY:output_70x46.gray', '70x46', 8, q//, '8365d1242126cb96856a9b4ade0bfad06900b4f42c3f05d589030c1240f37827' ); print("RGB format ...\n"); ++$test; testReadWriteSized( 'RGB:input_70x46.rgb', 'RGB:output_70x46.rgb', '70x46', 8, q//, 'a698f2fe0c6c31f83d19554a6ec02bac79c961dd9a87e7ed217752e75eb615d7' ); print("RGBA format ...\n"); ++$test; testReadWriteSized( 'RGBA:input_70x46.rgba', 'RGBA:output_70x46.rgba', '70x46', 8, q//, '1252b2f3facc0fb67fcfacfc01938843566acbb9480bbe077a4c6f6af528eb4e' ); 1;