TIFFGetField, TIFFVGetField - get the value(s) of a tag in
       an open TIFF file


SYNOPSIS

       #include <tiffio.h>
       int TIFFGetField(TIFF* tif, ttag_t tag, ...)
       #include <stdarg.h>
       int TIFFVGetField(TIFF* tif, ttag_t tag, va_list ap)
       int TIFFGetFieldDefaulted(TIFF* tif, ttag_t tag, ...)
       int TIFFVGetFieldDefaulted(TIFF* tif, ttag_t tag,  va_list
       ap)


DESCRIPTION

       TIFFGetField  returns  the  value  of  a tag or pseudo-tag
       associated with the the current directory of the open TIFF
       file  tif.   (A  pseudo-tag is a parameter that is used to
       control the operation of the TIFF library but whose  value
       is  not read or written to the underlying file.)  The file
       must have been previously opened with  TIFFOpen(3T).   The
       tag is identified by tag, one of the values defined in the
       include file tiff.h (see also the table below).  The  type
       and  number  of  values  returned  is dependent on the tag
       being requested.  The programming interface uses  a  vari­
       able  argument  list as prescribed by the stdarg(3) inter­
       face.  The returned values should only be  interpreted  if
       TIFFGetField returns 1.

       TIFFVGetField  is  functionally equivalent to TIFFGetField
       except that it takes a  pointer  to  a  variable  argument
       list.   TIFFVGetField is useful for layering interfaces on
       top of the functionality provided by TIFFGetField.

       TIFFGetFieldDefaulted and TIFFVGetFieldDefaulted are iden­
       tical  to TIFFGetField and TIFFVGetField, except that if a
       tag is not defined in the current directory and it  has  a
       default value, then the default value is returned.

       The  tags  understood  by libtiff, the number of parameter
       values, and the types for the returned  values  are  shown
       below.   The  data  types are specified as in C and corre­
       spond to the types used to specify tag values to  TIFFSet­
       Field(3T).   Remember  that TIFFGetField returns parameter
       values, so all the listed data types are pointers to stor­
       age  where  values  should  be returned.  Consult the TIFF
       specification for information on the meaning of  each  tag
       and their possible values.

       Tag Name                        Count  Types             Notes
       TIFFTAG_ARTIST                  1      char**
       TIFFTAG_BADFAXLINES             1      uint32*
       TIFFTAG_BITSPERSAMPLE           1      uint16*
       TIFFTAG_CLEANFAXDATA            1      uint16*
       TIFFTAG_COLORMAP                3      uint16**          1<<BitsPerSample arrays

       TIFFTAG_CONSECUTIVEBADFAXLINES  1      uint32*
       TIFFTAG_DATATYPE                1      uint16*
       TIFFTAG_DATETIME                1      char**
       TIFFTAG_DOCUMENTNAME            1      char**
       TIFFTAG_DOTRANGE                2      uint16*
       TIFFTAG_EXTRASAMPLES            2      uint16*,uint16**  count & types array
       TIFFTAG_FAXMODE                 1      int*              G3/G4 compression pseudo-tag
       TIFFTAG_FAXFILLFUNC             1      TIFFFaxFillFunc*  G3/G4 compression pseudo-tag
       TIFFTAG_FILLORDER               1      uint16*
       TIFFTAG_GROUP3OPTIONS           1      uint32*
       TIFFTAG_GROUP4OPTIONS           1      uint32*
       TIFFTAG_HALFTONEHINTS           2      uint16*
       TIFFTAG_HOSTCOMPUTER            1      char**
       TIFFTAG_IMAGEDEPTH              1      uint32*
       TIFFTAG_IMAGEDESCRIPTION        1      char**
       TIFFTAG_IMAGELENGTH             1      uint32*
       TIFFTAG_IMAGEWIDTH              1      uint32*
       TIFFTAG_INKNAMES                1      char**
       TIFFTAG_INKSET                  1      uint16*
       TIFFTAG_JPEGTABLES              2      u_short*,void**   count & tables
       TIFFTAG_JPEGQUALITY             1      int*              JPEG pseudo-tag
       TIFFTAG_JPEGCOLORMODE           1      int*              JPEG pseudo-tag
       TIFFTAG_JPEGTABLESMODE          1      int*              JPEG pseudo-tag
       TIFFTAG_MAKE                    1      char**
       TIFFTAG_MATTEING                1      uint16*
       TIFFTAG_MAXSAMPLEVALUE          1      uint16*
       TIFFTAG_MINSAMPLEVALUE          1      uint16*
       TIFFTAG_MODEL                   1      char**
       TIFFTAG_ORIENTATION             1      uint16*
       TIFFTAG_PAGENAME                1      char**
       TIFFTAG_PAGENUMBER              2      uint16*
       TIFFTAG_PHOTOMETRIC             1      uint16*
       TIFFTAG_PLANARCONFIG            1      uint16*
       TIFFTAG_PREDICTOR               1      uint16*
       TIFFTAG_PRIMARYCHROMATICITIES   1      float**           6-entry array
       TIFFTAG_REFERENCEBLACKWHITE     1      float**           2*SamplesPerPixel array
       TIFFTAG_RESOLUTIONUNIT          1      uint16*
       TIFFTAG_ROWSPERSTRIP            1      uint32*
       TIFFTAG_SAMPLEFORMAT            1      uint16*
       TIFFTAG_SAMPLESPERPIXEL         1      uint16*
       TIFFTAG_SMAXSAMPLEVALUE         1      double*
       TIFFTAG_SMINSAMPLEVALUE         1      double*
       TIFFTAG_SOFTWARE                1      char**
       TIFFTAG_STONITS                 1      double**
       TIFFTAG_STRIPBYTECOUNTS         1      uint32**
       TIFFTAG_STRIPOFFSETS            1      uint32**
       TIFFTAG_SUBFILETYPE             1      uint32*
       TIFFTAG_SUBIFD                  2      uint16*,uint32**  count & offsets array
       TIFFTAG_TARGETPRINTER           1      char**
       TIFFTAG_THRESHHOLDING           1      uint16*
       TIFFTAG_TILEBYTECOUNTS          1      uint32**
       TIFFTAG_TILEDEPTH               1      uint32*
       TIFFTAG_TILELENGTH              1      uint32*

       TIFFTAG_TILEWIDTH               1      uint32*
       TIFFTAG_TRANSFERFUNCTION        1 or 3 uint16**          1<<BitsPerSample entry arrays
       TIFFTAG_WHITEPOINT              1      float**           2-entry array
       TIFFTAG_XPOSITION               1      float*
       TIFFTAG_XRESOLUTION             1      float*
       TIFFTAG_YCBCRCOEFFICIENTS       1      float**           3-entry array
       TIFFTAG_YCBCRPOSITIONING        1      uint16*
       TIFFTAG_YCBCRSUBSAMPLING        2      uint16*
       TIFFTAG_YPOSITION               1      float*
       TIFFTAG_YRESOLUTION             1      float*
       TIFFTAG_ICCPROFILE              2      uint32*,void**    count, profile data
         If  SamplesPerPixel  is  one,  then  a  single  array is
       returned; otherwise three arrays are returned.
        The contents of this field are quite  complex.   See  The
       ICC Profile Format Specification, Annex B.3 "Embedding ICC
       Profiles     in     TIFF     Files"     (available      at
       http://www.color.org) for an explanation.


RETURN VALUES

       1  is returned if the tag is defined in the current direc­
       tory; otherwise a 0 is returned.


DIAGNOSTICS

       All error messages are directed to the TIFFError(3T)  rou­
       tine.

       Unknown field, tag 0x%x.  An unknown tag was supplied.


SEE ALSO

       libtiff(3T), TIFFOpen(3T), TIFFSetField(3T), TIFFSetDirec­
       tory(3T), TIFFReadDirectory(3T), TIFFWriteDirectory(3T)


Man(1) output converted with man2html