Magick++  7.1.2-29
Convert, Edit, Or Compose Bitmap Images
geometry.cpp
1 // This may look like C code, but it is really -*- C++ -*-
2 //
3 // Copyright Dirk Lemstra 2015
4 //
5 // Test Magick::Geometry class
6 //
7 
8 #include <Magick++.h>
9 #include <string>
10 #include <iostream>
11 
12 using namespace std;
13 
14 using namespace Magick;
15 
16 int main(int, char **argv)
17 {
18 
19  // Initialize ImageMagick install location for Windows
20  MagickPlusPlusGenesis genesis(*argv);
21 
22  int failures=0;
23 
24  try
25  {
26 
27  //
28  // Verify conversion from and to string
29  //
30 
31  string input="100x50+10-5!";
32  Geometry geometry(input);
33 
34  if ((geometry.width() != 100) || (geometry.height() != 50) ||
35  (geometry.xOff() != 10) || (geometry.yOff() != -5) ||
36  (geometry.aspect() == false))
37  {
38  ++failures;
39  cout << "Line: " << __LINE__
40  << " Conversion from " << input << " failed"
41  << endl;
42  }
43 
44  string output=geometry;
45  if (output != input)
46  {
47  ++failures;
48  cout << "Line: " << __LINE__
49  << " Output " << output << " is not the same as " << input
50  << endl;
51  }
52  }
53  catch( Exception &error_ )
54  {
55  cout << "Caught exception: " << error_.what() << endl;
56  return 1;
57  }
58  catch( exception &error_ )
59  {
60  cout << "Caught exception: " << error_.what() << endl;
61  return 1;
62  }
63 
64  if ( failures )
65  {
66  cout << failures << " failures" << endl;
67  return 1;
68  }
69 
70  return 0;
71 }