|
Packit |
7838c8 |
/*
|
|
Packit |
7838c8 |
* maketif.c -- creates a little TIFF file, with
|
|
Packit |
7838c8 |
* the XTIFF extended tiff example tags.
|
|
Packit |
7838c8 |
*/
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
#include <stdlib.h>
|
|
Packit |
7838c8 |
#include "xtiffio.h"
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
void SetUpTIFFDirectory(TIFF *tif);
|
|
Packit |
7838c8 |
void WriteImage(TIFF *tif);
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
#define WIDTH 20
|
|
Packit |
7838c8 |
#define HEIGHT 20
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
void main()
|
|
Packit |
7838c8 |
{
|
|
Packit |
7838c8 |
TIFF *tif=(TIFF*)0; /* TIFF-level descriptor */
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
tif=XTIFFOpen("newtif.tif","w");
|
|
Packit |
7838c8 |
if (!tif) goto failure;
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
SetUpTIFFDirectory(tif);
|
|
Packit |
7838c8 |
WriteImage(tif);
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
XTIFFClose(tif);
|
|
Packit |
7838c8 |
exit (0);
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
failure:
|
|
Packit |
7838c8 |
printf("failure in maketif\n");
|
|
Packit |
7838c8 |
if (tif) XTIFFClose(tif);
|
|
Packit |
7838c8 |
exit (-1);
|
|
Packit |
7838c8 |
}
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
void SetUpTIFFDirectory(TIFF *tif)
|
|
Packit |
7838c8 |
{
|
|
Packit |
7838c8 |
double mymulti[6]={0.0,1.0,2.0, 3.1415926, 5.0,1.0};
|
|
Packit |
7838c8 |
uint32 mysingle=3456;
|
|
Packit |
7838c8 |
char *ascii="This file was produced by Steven Spielberg. NOT";
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
TIFFSetField(tif,TIFFTAG_IMAGEWIDTH,WIDTH);
|
|
Packit |
7838c8 |
TIFFSetField(tif,TIFFTAG_IMAGELENGTH,HEIGHT);
|
|
Packit |
7838c8 |
TIFFSetField(tif,TIFFTAG_COMPRESSION,COMPRESSION_NONE);
|
|
Packit |
7838c8 |
TIFFSetField(tif,TIFFTAG_PHOTOMETRIC,PHOTOMETRIC_MINISBLACK);
|
|
Packit |
7838c8 |
TIFFSetField(tif,TIFFTAG_PLANARCONFIG,PLANARCONFIG_CONTIG);
|
|
Packit |
7838c8 |
TIFFSetField(tif,TIFFTAG_BITSPERSAMPLE,8);
|
|
Packit |
7838c8 |
TIFFSetField(tif,TIFFTAG_ROWSPERSTRIP,20);
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
/* Install the extended TIFF tag examples */
|
|
Packit |
7838c8 |
TIFFSetField(tif,TIFFTAG_EXAMPLE_MULTI,6,mymulti);
|
|
Packit |
7838c8 |
TIFFSetField(tif,TIFFTAG_EXAMPLE_SINGLE,mysingle);
|
|
Packit |
7838c8 |
TIFFSetField(tif,TIFFTAG_EXAMPLE_ASCII,ascii);
|
|
Packit |
7838c8 |
}
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
void WriteImage(TIFF *tif)
|
|
Packit |
7838c8 |
{
|
|
Packit |
7838c8 |
int i;
|
|
Packit |
7838c8 |
char buffer[WIDTH];
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
memset(buffer,0,sizeof(buffer));
|
|
Packit |
7838c8 |
for (i=0;i
|
|
Packit |
7838c8 |
if (!TIFFWriteScanline(tif, buffer, i, 0))
|
|
Packit |
7838c8 |
TIFFErrorExt(tif->tif_clientdata, "WriteImage","failure in WriteScanline\n");
|
|
Packit |
7838c8 |
}
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
/*
|
|
Packit |
7838c8 |
* Local Variables:
|
|
Packit |
7838c8 |
* mode: c
|
|
Packit |
7838c8 |
* c-basic-offset: 8
|
|
Packit |
7838c8 |
* fill-column: 78
|
|
Packit |
7838c8 |
* End:
|
|
Packit |
7838c8 |
*/
|