Annotation of embedaddon/php/ext/gd/libgd/gdparttopng.c, revision 1.1.1.1

1.1       misho       1: #include <stdio.h>
                      2: #include <stdlib.h>            /* For atoi */
                      3: #include "gd.h"
                      4: 
                      5: /* A short program which converts a .png file into a .gd file, for
                      6:    your convenience in creating images on the fly from a
                      7:    basis image that must be loaded quickly. The .gd format
                      8:    is not intended to be a general-purpose format. */
                      9: 
                     10: int
                     11: main (int argc, char **argv)
                     12: {
                     13:   gdImagePtr im;
                     14:   FILE *in, *out;
                     15:   int x, y, w, h;
                     16: 
                     17:   if (argc != 7)
                     18:     {
                     19:       fprintf (stderr, "Usage: gdparttopng filename.gd filename.png x y w h\n");
                     20:       exit (1);
                     21:     }
                     22:   in = fopen (argv[1], "rb");
                     23:   if (!in)
                     24:     {
                     25:       fprintf (stderr, "Input file does not exist!\n");
                     26:       exit (1);
                     27:     }
                     28: 
                     29:   x = atoi (argv[3]);
                     30:   y = atoi (argv[4]);
                     31:   w = atoi (argv[5]);
                     32:   h = atoi (argv[6]);
                     33: 
                     34:   printf ("Extracting from (%d, %d), size is %dx%d\n", x, y, w, h);
                     35: 
                     36:   im = gdImageCreateFromGd2Part (in, x, y, w, h);
                     37:   fclose (in);
                     38:   if (!im)
                     39:     {
                     40:       fprintf (stderr, "Input is not in GD2 format!\n");
                     41:       exit (1);
                     42:     }
                     43:   out = fopen (argv[2], "wb");
                     44:   if (!out)
                     45:     {
                     46:       fprintf (stderr, "Output file cannot be written to!\n");
                     47:       gdImageDestroy (im);
                     48:       exit (1);
                     49:     }
                     50: #ifdef HAVE_LIBPNG
                     51:   gdImagePng (im, out);
                     52: #else
                     53:   fprintf(stderr, "No PNG library support.\n");
                     54: #endif
                     55:   fclose (out);
                     56:   gdImageDestroy (im);
                     57: 
                     58:   return 0;
                     59: }

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>