summaryrefslogtreecommitdiff
path: root/examples/tiffread.c
blob: f1d78369be58564382dfc1c56ea23d831abbf38d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
/*
 * You can fetch a set of samples TIFF images here:
 * ftp://ftp.remotesensing.org/pub/libtiff/
 * (pics-x.y.z.tar.gz)
 */

#include <gd.h>
#include <stdio.h>
#include <stdlib.h>
int main()
{
	gdImagePtr im;
	FILE *fp;
	char path[9][2048];
	int i;
	char dst[2048];

	sprintf(path[0], "cramps-tile.tif");
	sprintf(path[1], "cramps.tif");
	sprintf(path[2], "ycbcr-cat.tif");
	sprintf(path[3], "jello.tif");
	sprintf(path[4], "caspian.tif");
	sprintf(path[5], "strike.tif");
	sprintf(path[6], "off_luv24.tif");
	sprintf(path[7], "off_l16.tif");
	sprintf(path[8], "fax2d.tif");

	for (i = 0; i < 9; i++) {
		printf("opening %s\n", path[i]);
		fp = fopen(path[i], "rb");
		if (!fp) {
			printf("failed, cannot open file\n");
			return 1;
		}

		im = gdImageCreateFromTiff(fp);
		fclose(fp);
		if (!im) {
			fprintf(stderr, "Can't load TIFF image %s\n", path[i]);
			return 1;
		}


		sprintf(dst, "%i.png", i);

		fp = fopen(dst, "wb");
		if (!fp) {
			fprintf(stderr, "Can't save png image fromtiff.png\n");
			gdImageDestroy(im);
			return 1;
		}

		gdImagePng(im, fp);
		fclose(fp);
		gdImageDestroy(im);
	}
	return 0;
}