Source

gd-libgd / src / gdtopng.c

pierre b0243fe 




pierre 084ba37 
pierre d0566b5 
pierre 084ba37 


pierre 1cdea74 


pierre 084ba37 
pierre 1cdea74 

pierre 084ba37 
pierre 1cdea74 
















tabe 300e81e 
pierre 1cdea74 








pierre b623f93 
pierre 1cdea74 
pierre b623f93 
pierre 0a3a506 
pierre b623f93 
pierre 1cdea74 

pierre 6223ff8 
pierre 1cdea74 
pierre 084ba37 

#ifdef HAVE_CONFIG_H
#include "config.h"
#endif

#include <stdio.h>
#include <stdlib.h>
#include "gd.h"

/* A short program which converts a .png file into a .gd file, for
   your convenience in creating images on the fly from a
   basis image that must be loaded quickly. The .gd format
   is not intended to be a general-purpose format. */

int
main (int argc, char **argv)
{
  gdImagePtr im;
  FILE *in, *out;
  if (argc != 3)
    {
      fprintf (stderr, "Usage: gdtopng filename.gd filename.png\n");
      exit (1);
    }
  in = fopen (argv[1], "rb");
  if (!in)
    {
      fprintf (stderr, "Input file does not exist!\n");
      exit (1);
    }
  im = gdImageCreateFromGd (in);
  fclose (in);
  if (!im)
    {
      fprintf (stderr, "Input is not in GD format!\n");
      exit (1);
    }
  out = fopen (argv[2], "wb");
  if (!out)
    {
      fprintf (stderr, "Output file cannot be written to!\n");
      gdImageDestroy (im);
      exit (1);
    }
#ifdef HAVE_LIBPNG
  gdImagePng (im, out);
#else
  fprintf (stderr, "No PNG library support.\n");
#endif
  fclose (out);
  gdImageDestroy (im);

  return 0;
}