text: /* stbiw-0.92 - public domain - http://nothings.org/stb/stb_image_write.h
     writes out PNG/BMP/TGA images to C stdio - Sean Barrett 2010
                              no warranty implied; use at your own risk
  
  
  Before including,
  
      #define STB_IMAGE_WRITE_IMPLEMENTATION
  
  in the file that you want to have the implementation.
  
  
  ABOUT:
  
     This header file is a library for writing images to C stdio. It could be
     adapted to write to memory or a general streaming interface; let me know.
  
     The PNG output is not optimal; it is 20-50% larger than the file
     written by a decent optimizing implementation. This library is designed
     for source code compactness and simplicitly, not optimal image file size
     or run-time performance.
  
  USAGE:
  
     There are three functions, one for each image file format:
  
       int stbi_write_png(char const *filename, int w, int h, int comp, const void *data, int stride_in_bytes);
       int stbi_write_bmp(char const *filename, int w, int h, int comp, const void *data);
       int stbi_write_tga(char const *filename, int w, int h, int comp, const void *data);
  
     Each function returns 0 on failure and non-0 on success.
  
     The functions create an image file defined by the parameters. The image
     is a rectangle of pixels stored from left-to-right, top-to-bottom.
     Each pixel contains 'comp' channels of data stored interleaved with 8-bits
     per channel, in the following order: 1=Y, 2=YA, 3=RGB, 4=RGBA. (Y is
     monochrome color.) The rectangle is 'w' pixels wide and 'h' pixels tall.
     The *data pointer points to the first byte of the top-left-most pixel.
     For PNG, "stride_in_bytes" is the distance in bytes from the first byte of
     a row of pixels to the first byte of the next row of pixels.
  
     PNG creates output files with the same number of components as the input.
     The BMP and TGA formats expand Y to RGB in the file format. BMP does not
     output alpha.
  
     PNG supports writing rectangles of data even when the bytes storing rows of
     data are not consecutive in memory (e.g. sub-rectangles of a larger image),
     by supplying the stride between the beginning of adjacent rows. The other
     formats do not. (Thus you cannot write a native-format BMP through the BMP
     writer, both because it is in BGR order and because it may have padding
     at the end of the line.)
  */
  
  #ifndef INCLUDE_STB_IMAGE_WRITE_H
  #define INCLUDE_STB_IMAGE_WRITE_H
  
  #ifdef __cplusplus
  extern "C" {
  #endif
  
  extern int stbi_write_png(char const *filename, int w, int h, int comp, const void *data, int stride_in_bytes);
  extern int stbi_write_bmp(char const *filename, int w, int h, int comp, const void *data);
  extern int stbi_write_tga(char const *filename, int w, int h, int comp, const void *data);
  
  #ifdef __cplusplus
  }
  #endif
  
  #endif//INCLUDE_STB_IMAGE_WRITE_H
  
  