• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2    Direct call to MagickImageCommand(),
3    which is basically what the "magick" command does via
4    a wrapper function MagickCommandGenesis()
5 
6    Compile with ImageMagick-devlop installed...
7 
8      gcc -lMagickWand -lMagickCore magick_command.c -o magick_command
9 
10    Compile and run directly in Source Directory...
11 
12      IM_PROG=api_examples/magick_command
13      gcc -I`pwd` -LMagickWand/.libs -LMagickCore/.libs \
14        -lMagickWand -lMagickCore  $IM_PROG.c -o $IM_PROG
15 
16      sh magick.sh    $IM_PROG
17 
18 */
19 #include <stdio.h>
20 #include "MagickCore/studio.h"
21 #include "MagickCore/exception.h"
22 #include "MagickCore/exception-private.h"
23 #include "MagickCore/image.h"
24 #include "MagickWand/MagickWand.h"
25 #include "MagickWand/magick-cli.h"
26 
main(int argc,char ** argv)27 int main(int argc, char **argv)
28 {
29   MagickCoreGenesis(argv[0],MagickFalse);
30 
31   {
32     MagickBooleanType status;
33 
34     ImageInfo *image_info = AcquireImageInfo();
35     ExceptionInfo *exception = AcquireExceptionInfo();
36 
37     int arg_count;
38     char *args[] = { "magick", "-size", "100x100", "xc:red",
39                      "(", "rose:", "-rotate", "-90", ")",
40                      "+append", "show:", NULL };
41 
42     for(arg_count = 0; args[arg_count] != (char *) NULL; arg_count++);
43 
44     (void) MagickImageCommand(image_info, arg_count, args, NULL, exception);
45 
46     if (exception->severity != UndefinedException)
47     {
48       CatchException(exception);
49       fprintf(stderr, "Major Error Detected\n");
50     }
51 
52     image_info=DestroyImageInfo(image_info);
53     exception=DestroyExceptionInfo(exception);
54   }
55   MagickCoreTerminus();
56 }
57