TIFFReadScanline

TriggerTek Logo
abcdefghijklmnopqrstuvwxyz_
TIFFReadScanline(3T)					 TIFFReadScanline(3T)



NAME
       TIFFReadScanline	 -  read  and  decode a scanline of data from an open
       TIFF file

SYNOPSIS
       #include <tiffio.h>
       int TIFFReadScanline(TIFF* tif, tdata_t	buf,  uint32  row,  tsample_t
       sample)

DESCRIPTION
       Read  the  data	for  the  specified row into the (user supplied) data
       buffer buf.  The data are returned decompressed	and,  in  the  native
       byte-  and bit-ordering, but are otherwise packed (see further below).
       The buffer must be large enough to hold an entire  scanline  of	data.
       Applications  should call the routine TIFFScanlineSize to find out the
       size (in bytes) of a scanline buffer.  The  row	parameter  is  always
       used  by	 TIFFReadScanline;  the sample parameter is used only if data
       are organized in separate planes (PlanarConfiguration=2).

NOTES
       The library  attempts  to  hide	bit-  and  byte-ordering  differences
       between	the  image  and	 the native machine by converting data to the
       native machine order.  Bit reversal is done if the  FillOrder  tag  is
       opposite	 to the native machine bit order.  16- and 32-bit samples are
       automatically byte-swapped if the file was written with a  byte	order
       opposite to the native machine byte order,

       In C++ the sample parameter defaults to 0.

RETURN VALUES
       TIFFReadScanline	 returns  -1  if  it detects an error; otherwise 1 is
       returned.

DIAGNOSTICS
       All error messages are directed to the TIFFError(3T) routine.

       Compression algorithm  does  not	 support  random  access.   Data  was
       requested  in  a non-sequential order from a file that uses a compres-
       sion algorithm and that has RowsPerStrip greater than one.   That  is,
       data  in	 the  image is stored in a compressed form, and with multiple
       rows packed into a strip.  In this case, the library does not  support
       random access to the data.  The data should either be accessed sequen-
       tially, or the file should be converted so that each strip is made  up
       of one row of data.

BUGS
       Reading	subsampled  YCbCR  data	 does not work correctly because, for
       PlanarConfiguration=2 the size of a scanline is not  calculated	on  a
       per-sample  basis,  and for PlanarConfiguration=1 the library does not
       unpack the block-interleaved samples; use the  strip-  and  tile-based
       interfaces to read these formats.

SEE ALSO
       libtiff(3T),   TIFFOpen(3T),   TIFFReadEncodedStrip(3T),	 TIFFReadRaw-
       Strip(3T)



			       October 15, 1995		 TIFFReadScanline(3T)