AWARE SYSTEMS
TIFF and LibTiff Mail List Archive

2001.11.08 04:32 "using TIFFWriteScanline", by Bryce Loughnan

Hi

I'm trying to make an 8 bit grayscale tiff using TIFFWriteScanline. I'm not sure what I'm doing wrong.
I'm unsure about rowsperstrip. I have read through the docs, specs and examples. But I don't seem to get it.

Hopefully this is trivial to someone out there.
Any help would be great!

thanx

bryce

{
  uint32 w = 100;
  uint32 h = 100;
  uint16 spp = 1;
  uint16 photometric = PHOTOMETRIC_MINISBLACK;
  uint16 compression = COMPRESSION_NONE;

TIFF* out = TIFFOpen("output.tif", "w");

TIFFSetField(out, TIFFTAG_IMAGEWIDTH, w);

TIFFSetField(out, TIFFTAG_IMAGELENGTH, h);

TIFFSetField(out, TIFFTAG_ORIENTATION, ORIENTATION_TOPLEFT);

TIFFSetField(out, TIFFTAG_SAMPLESPERPIXEL, spp);

TIFFSetField(out, TIFFTAG_BITSPERSAMPLE, 8);

TIFFSetField(out, TIFFTAG_PLANARCONFIG, PLANARCONFIG_CONTIG);

TIFFSetField(out, TIFFTAG_PHOTOMETRIC, 1);

TIFFSetField(out, TIFFTAG_COMPRESSION, compression);

TIFFSetField(out, TIFFTAG_ROWSPERSTRIP, 1);

TIFFSetField(out, TIFFTAG_XRESOLUTION, 1);

TIFFSetField(out, TIFFTAG_YRESOLUTION, 1);

TIFFSetField(out, TIFFTAG_RESOLUTIONUNIT, 3);

   unsigned char values[100];

  int i;

  for(i=0; i < 100; i++)
   values[i]= 255;
  //values[i]= 100;

  for (i=0; i < 100; i++)
  {
   TIFFWriteScanline(out, values, h, 0);
  }

  TIFFClose(out);
 }

Download your free MojoWorld Transporter today
http://www.pandromeda.com/get_transporter