Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
TIFFReadRGBATile(3TIFF)				       TIFFReadRGBATile(3TIFF)

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

       #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_t  x,	uint32_t  y,  uint32_t

       TIFFReadRGBATile	reads a	single tile of a tile-based image into memory,
       storing the result in the user supplied RGBA raster.  The raster	is as-
       sumed  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  raster  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  ap-
       propriate zeroed	areas.

       Raster  pixels  are  8-bit  packed red, green, blue, alpha samples. The
       macros TIFFGetR,	TIFFGetG, TIFFGetB, and	TIFFGetA should	be used	to ac-
       cess individual samples.	Images without Associated Alpha	matting	infor-
       mation 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.

       Samples	must  be  either  1,  2,  4,  8, or 16 bits. Colorimetric sam-
       ples/pixel must be either 1, 3, or 4 (i.e.  SamplesPerPixel  minus  Ex-

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

       TIFFReadRGBATile	is just	a wrapper around the more general  TIFFRGBAIm-
       age(3TIFF)  facilities.	It's main advantage over the similar TIFFRead-
       RGBAImage() 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	opera-
       tion for	stripped images.

       1 is returned if	the image was successfully read	and converted.	Other-
       wise, 0 is returned if an error was encountered.

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

       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 SamplesPerPixel
       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 miss-
       ing 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 insufficient mem-
       ory for a table used to convert image samples to	8-bit RGB.

       Missing required	"Colormap" tag.	 A Palette image did not  have	a  re-
       quired 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 BitsPer-
       Sample, SamplesPerPixel,	and PhotometricInterpretation) that  TIFFRead-
       RGBAImage can not handle.

       No space	for B&W	mapping	table.	There was insufficient memory to allo-
       cate 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.

       ReadRGBAStrip(3TIFF), libtiff(3TIFF)

       Libtiff library home page:

libtiff			       December	10, 1998       TIFFReadRGBATile(3TIFF)


Want to link to this manual page? Use this URL:

home | help