libtiff/html/man/TIFFReadDirectory.3t.html
2003-12-21 21:47:11 +00:00

252 lines
9.8 KiB
HTML

<html>
<head>
<meta name="generator" content="groff -Thtml, see www.gnu.org">
<meta name="Content-Style" content="text/css">
<title>TIFFReadDirectory</title>
</head>
<body>
<h1 align=center>TIFFReadDirectory</h1>
<a href="#NAME">NAME</a><br>
<a href="#SYNOPSIS">SYNOPSIS</a><br>
<a href="#DESCRIPTION">DESCRIPTION</a><br>
<a href="#NOTES">NOTES</a><br>
<a href="#RETURN VALUES">RETURN VALUES</a><br>
<a href="#DIAGNOSTICS">DIAGNOSTICS</a><br>
<a href="#SEE ALSO">SEE ALSO</a><br>
<hr>
<!-- Creator : groff version 1.17.2 -->
<!-- CreationDate: Mon Dec 22 00:39:23 2003 -->
<a name="NAME"></a>
<h2>NAME</h2>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="10%"></td><td width="90%">
TIFFReadDirectory - get the contents of the next directory in an open <small>TIFF</small> file</td></table>
<a name="SYNOPSIS"></a>
<h2>SYNOPSIS</h2>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="10%"></td><td width="90%">
<b>#include &lt;tiffio.h&gt;<br>
int TIFFReadDirectory(TIFF* tif)</b></td></table>
<a name="DESCRIPTION"></a>
<h2>DESCRIPTION</h2>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="10%"></td><td width="90%">
Read the next directory in the specified file and make it
the current directory. Applications only need to call
<i>TIFFReadDirectory</i> to read multiple subfiles in a
single <small>TIFF</small> file-- the first directory in a
file is automatically read when <i>TIFFOpen</i> is
called.</td></table>
<a name="NOTES"></a>
<h2>NOTES</h2>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="10%"></td><td width="90%">
If the library is compiled with
<small>STRIPCHOP_SUPPORT</small> enabled, then images that
have a single uncompressed strip or tile of data are
automatically treated as if they were made up of multiple
strips or tiles of approximately 8 kilobytes each. This
operation is done only in-memory; it does not alter the
contents of the file. However, the construction of the
``chopped strips'' is visible to the application through the
number of strips [tiles] returned by
<i>TIFFNumberOfStrips</i>
[<i>TIFFNumberOfTiles</i>].</td></table>
<a name="RETURN VALUES"></a>
<h2>RETURN VALUES</h2>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="10%"></td><td width="90%">
If the next directory was successfully read, 1 is returned.
Otherwise, 0 is returned if an error was encountered, or if
there are no more directories to be read.</td></table>
<a name="DIAGNOSTICS"></a>
<h2>DIAGNOSTICS</h2>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="10%"></td><td width="90%">
All error messages are directed to the <i>TIFFError</i>(3T)
routine. All warning messages are directed to the
<i>TIFFWarning</i>(3T) routine.</td></table>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="10%"></td><td width="90%">
<b>Seek error accessing TIFF directory</b>. An error
occurred while positioning to the location of the
directory.</td></table>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="10%"></td><td width="90%">
<b>Wrong data type %d for field &quot;%s&quot;</b>. The tag
entry in the directory had an incorrect data type. For
example, an <i>ImageDescription</i> tag with a
<small>SHORT</small> data type.</td></table>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="10%"></td><td width="90%">
<b>TIFF directory is missing required &quot;%s&quot;
field</b>. The specified tag is required to be present by
the <small>TIFF</small> 5.0 specification, but is missing.
The directory is (usually) unusable.</td></table>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="10%"></td><td width="90%">
<b>%s: Rational with zero denominator</b>. A directory tag
has a <small>RATIONAL</small> value whose denominator is
zero.</td></table>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="10%"></td><td width="90%">
<b>Incorrect count %d for field &quot;%s&quot; (%lu,
expecting %lu); tag ignored</b>. The specified tag's count
field is bad. For example, a count other than 1 for a
<i>SubFileType</i> tag.</td></table>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="10%"></td><td width="90%">
<b>Cannot handle different per-sample values for field
&quot;%s&quot;</b>. The tag has <i>SamplesPerPixel</i>
values and they are not all the same; e.g.
<i>BitsPerSample</i>. The library is unable to handle images
of this sort.</td></table>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="10%"></td><td width="90%">
<b>Count mismatch for field &quot;%s&quot;; expecting %d,
got %d</b>. The count field in a tag does not agree with the
number expected by the library. This should never happen, so
if it does, the library refuses to read the
directory.</td></table>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="10%"></td><td width="90%">
<b>Invalid TIFF directory; tags are not sorted in ascending
order</b>. The directory tags are not properly sorted as
specified in the <small>TIFF</small> 5.0 specification. This
error is not fatal.</td></table>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="10%"></td><td width="90%">
<b>Ignoring unknown field with tag %d (0x%x)</b>. An unknown
tag was encountered in the directory; the library ignores
all such tags.</td></table>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="10%"></td><td width="90%">
<b>TIFF directory is missing requred &quot;ImageLength&quot;
field</b>. The image violates the specification by not
having a necessary field. There is no way for the library to
recover from this error.</td></table>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="10%"></td><td width="90%">
<b>TIFF directory is missing requred
&quot;PlanarConfig&quot; field</b>. The image violates the
specification by not having a necessary field. There is no
way for the library to recover from this error.</td></table>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="10%"></td><td width="90%">
<b>TIFF directory is missing requred
&quot;StripOffsets&quot; field</b>. The image has multiple
strips, but is missing the tag that specifies the file
offset to each strip of data. There is no way for the
library to recover from this error.</td></table>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="10%"></td><td width="90%">
<b>TIFF directory is missing requred &quot;TileOffsets&quot;
field</b>. The image has multiple tiles, but is missing the
tag that specifies the file offset to each tile of data.
There is no way for the library to recover from this
error.</td></table>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="10%"></td><td width="90%">
<b>TIFF directory is missing required
&quot;StripByteCounts&quot; field</b>. The image has
multiple strips, but is missing the tag that specifies the
size of each strip of data. There is no way for the library
to recover from this error.</td></table>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="10%"></td><td width="90%">
<b>TIFF directory is missing required
&quot;StripByteCounts&quot; field, calculating from
imagelength</b>. The image violates the specification by not
having a necessary field. However, when the image is
comprised of only one strip or tile, the library will
estimate the missing value based on the file
size.</td></table>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="10%"></td><td width="90%">
<b>Bogus &quot;StripByteCounts&quot; field, ignoring and
calculating from imagelength</b>. Certain vendors violate
the specification by writing zero for the StripByteCounts
tag when they want to leave the value unspecified. If the
image has a single strip, the library will estimate the
missing value based on the file size.</td></table>
<a name="SEE ALSO"></a>
<h2>SEE ALSO</h2>
<table width="100%" border=0 rules="none" frame="void"
cols="2" cellspacing="0" cellpadding="0">
<tr valign="top" align="left">
<td width="10%"></td><td width="90%">
<i>libtiff</i>(3T), <i>TIFFOpen</i>(3T),
<i>TIFFWriteDirectory</i>(3T), <i>TIFFSetDirectory</i>(3T),
<i>TIFFSetSubDirectory</i>(3T)</td></table>
<hr>
</body>
</html>