New comit of SDL2
[supertux.git] / src / SDL2 / external / tiff-4.0.3 / contrib / tags / maketif.c
1 /*
2  * maketif.c -- creates a little TIFF file, with
3  *   the XTIFF extended tiff example tags.
4  */
5
6 #include <stdlib.h>
7 #include "xtiffio.h"
8
9
10 void SetUpTIFFDirectory(TIFF *tif);
11 void WriteImage(TIFF *tif);
12
13 #define WIDTH 20
14 #define HEIGHT 20
15
16 void main()
17 {
18         TIFF *tif=(TIFF*)0;  /* TIFF-level descriptor */
19         
20         tif=XTIFFOpen("newtif.tif","w");
21         if (!tif) goto failure;
22         
23         SetUpTIFFDirectory(tif);
24         WriteImage(tif);
25         
26         XTIFFClose(tif);
27         exit (0);
28         
29 failure:
30         printf("failure in maketif\n");
31         if (tif) XTIFFClose(tif);
32         exit (-1);
33 }
34
35
36 void SetUpTIFFDirectory(TIFF *tif)
37 {
38         double mymulti[6]={0.0,1.0,2.0,  3.1415926, 5.0,1.0};
39         uint32 mysingle=3456;
40         char *ascii="This file was produced by Steven Spielberg. NOT";
41
42         TIFFSetField(tif,TIFFTAG_IMAGEWIDTH,WIDTH);
43         TIFFSetField(tif,TIFFTAG_IMAGELENGTH,HEIGHT);
44         TIFFSetField(tif,TIFFTAG_COMPRESSION,COMPRESSION_NONE);
45         TIFFSetField(tif,TIFFTAG_PHOTOMETRIC,PHOTOMETRIC_MINISBLACK);
46         TIFFSetField(tif,TIFFTAG_PLANARCONFIG,PLANARCONFIG_CONTIG);
47         TIFFSetField(tif,TIFFTAG_BITSPERSAMPLE,8);
48         TIFFSetField(tif,TIFFTAG_ROWSPERSTRIP,20);
49
50         /* Install the extended TIFF tag examples */
51         TIFFSetField(tif,TIFFTAG_EXAMPLE_MULTI,6,mymulti);
52         TIFFSetField(tif,TIFFTAG_EXAMPLE_SINGLE,mysingle);
53         TIFFSetField(tif,TIFFTAG_EXAMPLE_ASCII,ascii);
54 }
55
56
57 void WriteImage(TIFF *tif)
58 {
59         int i;
60         char buffer[WIDTH];
61         
62         memset(buffer,0,sizeof(buffer));
63         for (i=0;i<HEIGHT;i++)
64                 if (!TIFFWriteScanline(tif, buffer, i, 0))
65                         TIFFErrorExt(tif->tif_clientdata, "WriteImage","failure in WriteScanline\n");
66 }
67
68
69
70
71 /*
72  * Local Variables:
73  * mode: c
74  * c-basic-offset: 8
75  * fill-column: 78
76  * End:
77  */