PATH:
usr
/
share
/
doc
/
ImageMagick-c++-devel-6.9.10.68
/
examples
// This may look like C code, but it is really -*- C++ -*- // // Copyright Bob Friesenhahn, 1999, 2000, 2002, 2003 // // GD/PerlMagick example using Magick++ methods. // // Concept and algorithms lifted from PerlMagick demo script // #include <Magick++.h> #include <string> #include <iostream> using namespace std; using namespace Magick; int main( int /*argc*/, char ** argv) { // Initialize ImageMagick install location for Windows InitializeMagick(*argv); try { string srcdir(""); if(getenv("SRCDIR") != 0) srcdir = getenv("SRCDIR"); // // Create a 300x300 white canvas. // Image image( "300x300", "white" ); // // Draw texture-filled polygon // // Polygon list std::list<Coordinate> poly_coord; poly_coord.push_back( Coordinate(30,30) ); poly_coord.push_back( Coordinate(100,10) ); poly_coord.push_back( Coordinate(190,290) ); poly_coord.push_back( Coordinate(30,290) ); Image texture( srcdir + "tile.miff" ); image.penTexture( texture ); image.draw( DrawablePolygon( poly_coord ) ); texture.isValid( false ); image.penTexture( texture ); // Unset texture // // Draw filled ellipse with black border, and red fill color // image.strokeColor( "black" ); image.fillColor( "red" ); image.strokeWidth( 5 ); image.draw( DrawableEllipse( 100,100, 50,75, 0,360 ) ); image.fillColor( Color() ); // Clear out fill color // // Draw ellipse, and polygon, with black stroke, strokeWidth of 5 // image.strokeColor( "black" ); image.strokeWidth( 5 ); list<Drawable> drawlist; // Add polygon to list poly_coord.clear(); poly_coord.push_back( Coordinate(30,30) ); poly_coord.push_back( Coordinate(100,10) ); poly_coord.push_back( Coordinate(190,290) ); poly_coord.push_back( Coordinate(30,290) ); drawlist.push_back( DrawablePolygon( poly_coord ) ); image.draw( drawlist ); // // Floodfill object with blue // image.colorFuzz( 0.5*QuantumRange ); image.floodFillColor( "+132+62", "blue" ); // // Draw text // image.strokeColor(Color()); image.fillColor( "red" ); if (getenv("MAGICK_FONT") != 0) image.font(string(getenv("MAGICK_FONT"))); image.fontPointsize( 18 ); image.annotate( "Hello world!", "+150+20" ); image.fillColor( "blue" ); image.fontPointsize( 14 ); image.annotate( "Goodbye cruel world!", "+150+38" ); image.fillColor( "black" ); image.fontPointsize( 14 ); image.annotate( "I'm climbing the wall!", "+280+120", NorthWestGravity, 90.0 ); //image.display(); // // Write image. // cout << "Writing image \"shapes_out.miff\" ..." << endl; image.depth( 8 ); image.compressType( RLECompression ); image.write( "shapes_out.miff" ); // cout << "Display image..." << endl; // image.display( ); } catch( exception &error_ ) { cout << "Caught exception: " << error_.what() << endl; return 1; } return 0; }
[-] flip.cpp
[edit]
[-] model.miff
[edit]
[+]
..
[-] zoom.cpp
[edit]
[-] tile.miff
[edit]
[-] smile.miff
[edit]
[-] smile_anim.miff
[edit]
[-] shapes.cpp
[edit]
[-] demo.cpp
[edit]
[-] piddle.cpp
[edit]
[-] detrans.cpp
[edit]
[-] button.cpp
[edit]
[-] gravity.cpp
[edit]
[-] analyze.cpp
[edit]