Concurrent rotation and/or scaling to a balanced black & white density can be called concurrent with decompression. Optionally, scale to grey can be called after decompression.
; decompress image: ; Called from 'C' as follows: ; dcimage(char *bitmap, char *compdata, int width, int depth, int rotation, int scalefact, int type) ; where: ; bitmap = ptr to buffer to place uncompressed image ; compdata = ptr to buffer with compressed data ; width = width of image in pixels ; depth = depth of image in line ; rotation = angle to rotate data / 90 degrees (0,1,2, or 3) + 4 if scaling ; scalefactor = 16 bit fractional scale factor (< 1) ; type = Compression Type (0 = Group 3, 1 = Group 4) ; ; ; compress image: ; called from 'C' as follows: ; cpimage(char *bitmap, char *output, int width, int rowbytes, int depth, int type); ; where: ; bitmap = ptr to buffer containing uncompressed image ; compdata = ptr to buffer to store compressed data ; width = width of image in pixels ; rowbytes = number of bytes per row (can be odd or rounded up even) ; depth = depth of image in lines ; type = Compression Type (0 = Group 3, 1 = Group 4)