gif2png.h
上传用户:sorock1981
上传日期:2007-01-06
资源大小:73k
文件大小:2k
源码类别:

图片显示

开发平台:

Unix_Linux

  1. /* See the file COPYING for conditions of use */
  2. /* get png type definitions */
  3. #include "png.h"
  4. #define GIFterminator ';'
  5. #define GIFextension '!'
  6. #define GIFimage ','
  7. #define GIFcomment 0xfe
  8. #define GIFapplication 0xff
  9. #define GIFplaintext 0x01
  10. #define GIFgraphicctl 0xf9
  11. #define MAXCMSIZE 256
  12. typedef unsigned char byte;
  13. typedef png_color GifColor;
  14. struct GIFimagestruct {
  15.   GifColor colors[MAXCMSIZE];
  16.   unsigned long color_count[MAXCMSIZE];
  17.   int offset_x;
  18.   int offset_y;
  19.   int width;
  20.   int height;
  21.   int trans;
  22.   int interlace;
  23. };
  24. struct GIFelement {
  25.   struct GIFelement *next;
  26.   char GIFtype;
  27. #ifndef TMPFILE
  28.   byte *data;
  29.   long allocated_size;
  30. #else
  31.   unsigned long file_offset;
  32. #endif
  33.   long size;
  34.   /* only used if GIFtype==GIFimage */
  35.   struct GIFimagestruct *imagestruct;
  36. };
  37. extern struct gif_scr{
  38.   unsigned int  Width;
  39.   unsigned int  Height;
  40.   GifColor      ColorMap[MAXCMSIZE];
  41.   unsigned int  ColorMap_present;
  42.   unsigned int  BitPixel;
  43.   unsigned int  ColorResolution;
  44.   int           Background;
  45.   unsigned int  AspectRatio;
  46. } GifScreen;
  47. int ReadGIF(FILE *fd);
  48. int MatteGIF(GifColor matte);
  49. void allocate_element(void);
  50. void store_block(char *data, int size);
  51. void allocate_image(void);
  52. void set_size(long);
  53. void *xalloc(unsigned long s);
  54. void *xrealloc(void *p, unsigned long s);
  55. void fix_current(void);
  56. byte *access_data(struct GIFelement *e, unsigned long pos, unsigned long len);
  57. void free_mem(void);
  58. int interlace_line(int height, int line);
  59. int inv_interlace_line(int height, int line);
  60. extern struct GIFelement first;
  61. extern struct GIFelement *current;
  62. extern int recover;
  63. #ifdef TMPFILE
  64. extern FILE *tempfile;
  65. #endif
  66. extern const char version[];
  67. extern const char compile_info[];
  68. extern int skip_pte;