DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

TIFFReadRGBATile(3tiff)





TIFFReadRGBATile(3TIFFMISC. REFERENCE MANUAL PAGETIFFReadRGBATile(3TIFF)



NAME

     TIFFReadRGBATile - read and decode  an  image  tile  into  a
     fixed-format raster


SYNOPSIS

     #include <tiffio.h>

     #define TIFFGetR(abgr)   ((abgr) & 0xff)
     #define TIFFGetG(abgr)   (((abgr) >> 8) & 0xff)
     #define TIFFGetB(abgr)   (((abgr) >> 16) & 0xff)
     #define TIFFGetA(abgr)   (((abgr) >> 24) & 0xff)

     int TIFFReadRGBATile(TIFF *tif, uint32 x, uint32 y


DESCRIPTION

     TIFFReadRGBATile reads a single tile of a  tile-based  image
     into  memory,  storing  the result in the user supplied RGBA
     raster.  The raster is assumed to be an array of width times
     length  32-bit  entries,  where width is the width of a tile
     (TIFFTAG_TILEWIDTH) and length  is  the  height  of  a  tile
     (TIFFTAG_TILELENGTH).

     The x and y values are the offsets from the top left  corner
     to the top left corner of the tile to be read.  They must be
     an exact multiple of the tile width and length.

     Note that the raster is assume to be organized such that the
     pixel  at location (x,y) is raster[y*width+x]; with the ras-
     ter origin in the lower-left hand corner of the  tile.  That
     is bottom to top organization.  Edge tiles which partly fall
     off the image will be filled  out  with  appropriate  zeroed
     areas.

     Raster pixels are 8-bit packed red, green, blue, alpha  sam-
     ples.  The macros TIFFGetR, TIFFGetG, TIFFGetB, and TIFFGetA
     should be used to access individual samples. Images  without
     Associated  Alpha  matting information have a constant Alpha
     of 1.0 (255).

     See the TIFFRGBAImage(3TIFF) page for more  details  on  how
     various image types are converted to RGBA values.


NOTES

     Samples must be either 1, 2, 4, 8, or 16 bits.  Colorimetric
     samples/pixel  must  be either 1, 3, or 4 (i.e.  SamplesPer-
     Pixel minus ExtraSamples).

     Palette image colormaps that appear to be incorrectly  writ-
     ten as 8-bit values are automatically scaled to 16-bits.

libtiff          Last change: December 10, 1998                 1


TIFFReadRGBATile(3TIFFMISC. REFERENCE MANUAL PAGETIFFReadRGBATile(3TIFF)


     TIFFReadRGBATile is just a wrapper around the  more  general
     TIFFRGBAImage(3TIFF)  facilities.   It's main advantage over
     the similar TIFFReadRGBAImage() function is that  for  large
     images  a  single  buffer capable of holding the whole image
     doesn't need to be allocated, only enough for one tile.  The
     TIFFReadRGBAStrip()  function  does  a similar operation for
     stripped images.


RETURN VALUES

     1 is returned if the image was successfully  read  and  con-
     verted.   Otherwise,  0  is returned if an error was encoun-
     tered.


DIAGNOSTICS

     All error messages are directed to the TIFFError(3TIFF) rou-
     tine.

     Sorry, can  not  handle  %d-bit  pictures.   The  image  had
     BitsPerSample other than 1, 2, 4, 8, or 16.

     Sorry, can not handle %d-channel images.  The image had Sam-
     plesPerPixel other than 1, 3, or 4.

     Missing needed "PhotometricInterpretation" tag.   The  image
     did not have a tag that describes how to display the data.

     No "PhotometricInterpretation" tag, assuming RGB.  The image
     was  missing  a  tag  that  describes how to display it, but
     because it has 3 or 4 samples/pixel, it  is  assumed  to  be
     RGB.

     No "PhotometricInterpretation" tag,  assuming  min-is-black.
     The  image  was  missing a tag that describes how to display
     it, but because it has 1 sample/pixel, it is assumed to be a
     grayscale or bilevel image.

     No space for photometric conversion table.  There was insuf-
     ficient  memory for a table used to convert image samples to
     8-bit RGB.

     Missing required "Colormap" tag.  A Palette  image  did  not
     have a required Colormap tag.

     No space for tile buffer.  There was insufficient memory  to
     allocate an i/o buffer.

     No space for strip buffer.  There was insufficient memory to
     allocate an i/o buffer.

     Can not handle format.  The image has a format  (combination
     of  BitsPerSample, SamplesPerPixel, and PhotometricInterpre-
     tation) that TIFFReadRGBAImage can not handle.

libtiff          Last change: December 10, 1998                 2


TIFFReadRGBATile(3TIFFMISC. REFERENCE MANUAL PAGETIFFReadRGBATile(3TIFF)


     No space for B&W  mapping  table.   There  was  insufficient
     memory  to  allocate  a  table used to map grayscale data to
     RGB.

     No space for Palette mapping table.  There was  insufficient
     memory to allocate a table used to map data to 8-bit RGB.


SEE ALSO

     libtiff(3TIFF),    TIFFOpen(3TIFF),    TIFFRGBAImage(3TIFF),
     TIFFReadRGBAImage(3TIFF), TIFFReadRGBAStrip(3TIFF)

libtiff          Last change: December 10, 1998                 3


Man(1) output converted with man2html