/* test_jpegread.c needs jpegread.c */ #include int jpegread(char file_name[], int alpha, int *width, int* height, unsigned char rgbpix[]); int main(int argc, char * argv[]) { int status, i, j, k; unsigned char rgbpix[2000000]; int width; int height; int alpha = -1; if(argc<2) { printf("test_jpegread needs a command line argument xxx.jpg\n"); return 0; } printf("test_jpegread calling jpegread on file %s\n", argv[1]); status = jpegread(argv[1], alpha, &width, &height, rgbpix); printf("test_jpegread , alpha=%d, returned status=%d, width=%d, height=%d \n" ,alpha, status, width, height); k=0; for(i=0; i=width*height) break; /* last line may have some junk */ if((k/3)%width==0) {printf("\n"); j=0;} printf("%03u %03u %03u ", rgbpix[k], rgbpix[k+1], rgbpix[k+2]); k = k+3; } printf("\n"); if(k/3>=width*height) break; /* last line may have some junk */ } printf("test_jpegread again jpegread on file %s\n", argv[1]); alpha = 255; status = jpegread(argv[1], alpha, &width, &height, rgbpix); printf("test_jpegread , alpha=%d, returned status=%d, width=%d, height=%d \n" ,alpha, status, width, height); k=0; for(i=0; i=width*height) break; /* last line may have some junk */ if((k/4)%width==0) {printf("\n"); j=0;} printf("%03u %03u %03u %03u ", rgbpix[k], rgbpix[k+1], rgbpix[k+2], rgbpix[k+3]); k = k+4; } printf("\n"); if(k/4>=width*height) break; /* last line may have some junk */ } return 0; }