18using namespace Magick;
20int main(
int,
char ** argv)
30 InitializeMagick(*argv);
34 if (getenv(
"SRCDIR") != 0)
35 srcdir=getenv(
"SRCDIR");
41 readImages(&first,srcdir +
"test_image_anim.miff");
43 if (first.size() != 6)
46 cout <<
"Line: " << __LINE__
47 <<
" Read images failed, number of frames is "
49 <<
" rather than 6 as expected." << endl;
52 writeImages(first.begin(),first.end(),
"testmagick_anim_out.miff");
55 readImages(&second,
"testmagick_anim_out.miff");
57 list<Image>::iterator firstIter = first.begin();
58 list<Image>::iterator secondIter = second.begin();
59 while (firstIter != first.end() && secondIter != second.end())
61 if (firstIter->scene() != secondIter->scene())
64 cout <<
"Line: " << __LINE__
65 <<
" Image scene: " << secondIter->scene()
66 <<
" is not equal to original "
71 if (firstIter->rows() != secondIter->rows())
74 cout <<
"Line: " << __LINE__
75 <<
" Image rows " << secondIter->rows()
76 <<
" are not equal to original "
81 if (firstIter->columns() != secondIter->columns())
84 cout <<
"Line: " << __LINE__
85 <<
" Image columns " << secondIter->columns()
86 <<
" are not equal to original "
95 Image third(*first.begin());
96 third.write(
"testmagick_anim_out");
99 fourth.read(
"testmagick_anim_out");
101 if (fourth.magick() !=
"MIFF")
104 cout <<
"Line: " << __LINE__
105 <<
" Image magick: " << fourth.magick()
106 <<
" is not equal to MIFF"
110 third.write(
"testmagick_anim_out.ico");
111 fourth.read(
"testmagick_anim_out.ico");
113 if (fourth.magick() !=
"ICO")
116 cout <<
"Line: " << __LINE__
117 <<
" Image magick: " << fourth.magick()
118 <<
" is not equal to ICO"
123 third.write(
"testmagick_anim_out.ico");
124 fourth.read(
"testmagick_anim_out.ico");
126 if (fourth.magick() !=
"BMP")
129 cout <<
"Line: " << __LINE__
130 <<
" Image magick: " << fourth.magick()
131 <<
" is not equal to BMP"
135 third.write(
"PDB:testmagick_anim_out.ico");
136 fourth.read(
"testmagick_anim_out.ico");
138 if (fourth.magick() !=
"PDB")
141 cout <<
"Line: " << __LINE__
142 <<
" Image magick: " << fourth.magick()
143 <<
" is not equal to PDB"
148 third.write(
"testmagick_anim_out.ico");
149 fourth.read(
"testmagick_anim_out.ico");
151 if (fourth.magick() !=
"ICO")
154 cout <<
"Line: " << __LINE__
155 <<
" Image magick: " << fourth.magick()
156 <<
" is not equal to ICO"
162 cout <<
"Caught exception: " << error_.what() << endl;
165 catch(exception &error_)
167 cout <<
"Caught exception: " << error_.what() << endl;
173 cout << failures <<
" failures" << endl;