/* defines for "ColorDither" structure! */ #define PROC_ORDER 0 #define PROC_NEAR 1 #define PROC_FLOYD 2 #define PROC_JJN 3 #define PROC_STUCKI 4 #define CMAP_FIX 0 #define CMAP_USERDEF1 1 #define CMAP_USERDEF2 2 #define CMAP_OCTREEA 3 #define CMAP_OCTREE 4 #define CMAP_STATA 5 #define CMAP_STAT 6 typedef struct { unsigned tocolors : 16; /* # of color, range [4 .. 256] */ unsigned process : 4; /* type of processing algorithm */ unsigned colormap : 4; /* type of color computation */ unsigned spec_active : 1; /* activate installed values */ unsigned spec_always : 1; /* use always (also if no need) */ unsigned spec_grey : 1; /* dither to greys */ unsigned spec_noise : 1; /* use noise reduction filter */ unsigned spec_compress : 1; /* compress colormap to used colors */ unsigned unused : 3; /* for future use */ } ColorDither; /* defines for "dither" field in "ImageOptions" structure! */ #define FS_Dither 1 #define JJN_Dither 2 #define Stk_Dither 3 #define Halftone 4 #define Ordereddither 5 /* defines for "full" field in "ImageOptions" structure! */ #define FULL_NO 0 #define FULL_ZOOM 1 #define FULL_REPEAT 2 typedef struct _ios{ char *name; /* name (path) of image to load */ int merged; /* should merged to previous "image" */ int atx, aty; /* location to load/merge image at */ unsigned int bright; /* brightness multiplier in percentace */ unsigned int clipx, clipy; /* area of image to be used */ unsigned int clipw, cliph; /* area of image, which is in used */ unsigned int last_clipx; /* (internal) set to null */ unsigned int last_clipy; /* (internal) set to null */ unsigned int last_clipw; /* (internal) set to null */ unsigned int last_cliph; /* (internal) set to null */ unsigned int dither; /* if image is to be dithered and how */ unsigned int colors; /* max # of colors to use for this image */ /* simple color reduction algorithm */ int rotate; /* # degrees to rotate, multiple of 90 */ int xzoom, yzoom; /* zoom promiles (1 by 1000) positiv number: realtiv zoom promiles negativ number: size of dest. (absolut) */ int align; /* (internal) always set to 16 on ATARI */ int save; /* save image using: 1) monochrome routine (dither if need) 2) color routine (color quantisation) 3) true color routine */ char *savename; /* name of the destination image */ int autoname; /* (internal) automatical name construction */ unsigned int full, /* full image to area by zoom or repeatation*/ fullw, fullh; /* full image area */ ColorDither colordither; /* see above */ Scaling scalered; /* see IMAGE.H */ Scaling scalegreen; Scaling scaleblue; Scaling scaleadjust; int load_hexdump; /* load file as hexdump */ struct _ios *prev, *next; /* double link structure list */ char tc_saver [14]; /* filename without path for saving mono */ char color_saver[14]; /* filename of module for saving color */ char mono_saver [14]; /* filename of module for saving true col*/ } ImageOptions;