]>
Commit | Line | Data |
---|---|---|
8414a40c | 1 | <!-- Creator : groff version 1.18.1 --> |
80ed523f | 2 | <!-- CreationDate: Sat Feb 24 18:37:20 2007 --> |
8414a40c VZ |
3 | <html> |
4 | <head> | |
5 | <meta name="generator" content="groff -Thtml, see www.gnu.org"> | |
6 | <meta name="Content-Style" content="text/css"> | |
7 | <title>INTRO</title> | |
8 | </head> | |
9 | <body> | |
10 | ||
11 | <h1 align=center>INTRO</h1> | |
12 | <a href="#NAME">NAME</a><br> | |
13 | <a href="#SYNOPSIS">SYNOPSIS</a><br> | |
14 | <a href="#DESCRIPTION">DESCRIPTION</a><br> | |
15 | <a href="#DATA TYPES">DATA TYPES</a><br> | |
16 | <a href="#LIST OF ROUTINES">LIST OF ROUTINES</a><br> | |
17 | <a href="#TAG USAGE">TAG USAGE</a><br> | |
18 | <a href="#PSEUDO TAGS">PSEUDO TAGS</a><br> | |
19 | <a href="#DIAGNOSTICS">DIAGNOSTICS</a><br> | |
20 | <a href="#SEE ALSO">SEE ALSO</a><br> | |
21 | <a href="#BUGS">BUGS</a><br> | |
22 | ||
23 | <hr> | |
24 | <a name="NAME"></a> | |
25 | <h2>NAME</h2> | |
26 | <!-- INDENTATION --> | |
27 | <table width="100%" border=0 rules="none" frame="void" | |
28 | cols="2" cellspacing="0" cellpadding="0"> | |
29 | <tr valign="top" align="left"> | |
30 | <td width="8%"></td> | |
31 | <td width="91%"> | |
32 | <p><big>libtiff − introduction to <i>libtiff</i>, a | |
33 | library for reading and writing</big> TIFF | |
34 | <big>files</big></p> | |
35 | </td> | |
36 | </table> | |
37 | <a name="SYNOPSIS"></a> | |
38 | <h2>SYNOPSIS</h2> | |
39 | <!-- INDENTATION --> | |
40 | <table width="100%" border=0 rules="none" frame="void" | |
41 | cols="2" cellspacing="0" cellpadding="0"> | |
42 | <tr valign="top" align="left"> | |
43 | <td width="8%"></td> | |
44 | <td width="91%"> | |
45 | <p><big><b>#include <tiffio.h></b></big></p> | |
46 | <!-- INDENTATION --> | |
47 | <p><big>cc file.c <b>-ltiff</b></big></p> | |
48 | </td> | |
49 | </table> | |
50 | <a name="DESCRIPTION"></a> | |
51 | <h2>DESCRIPTION</h2> | |
52 | <!-- INDENTATION --> | |
53 | <table width="100%" border=0 rules="none" frame="void" | |
54 | cols="2" cellspacing="0" cellpadding="0"> | |
55 | <tr valign="top" align="left"> | |
56 | <td width="8%"></td> | |
57 | <td width="91%"> | |
58 | <p><big><i>libtiff</i> is a library for reading and writing | |
59 | data files encoded with the <i>Tag Image File</i> format, | |
60 | Revision 6.0 (or revision 5.0 or revision 4.0). This file | |
61 | format is suitable for archiving multi-color and | |
62 | monochromatic image data.</big></p> | |
63 | <!-- INDENTATION --> | |
64 | <p><big>The library supports several compression algorithms, | |
65 | as indicated by the <i>Compression</i> field, including: no | |
66 | compression (1),</big> CCITT <big>1D Huffman compression | |
67 | (2),</big> CCITT <big>Group 3 Facsimile compression | |
68 | (3),</big> CCITT <big>Group 4 Facsimile compression (4), | |
69 | Lempel-Ziv & Welch compression (5), baseline JPEG | |
70 | compression (7), word-aligned 1D Huffman compression | |
71 | (32771), and PackBits compression (32773). In addition, | |
72 | several nonstandard compression algorithms are supported: | |
73 | the 4-bit compression algorithm used by the | |
74 | <i>ThunderScan</i> program (32809) (decompression only), | |
75 | NeXT’s 2-bit compression algorithm (32766) | |
76 | (decompression only), an experimental LZ-style algorithm | |
77 | known as Deflate (32946), and an experimental CIE LogLuv | |
78 | compression scheme designed for images with high dynamic | |
79 | range (32845 for LogL and 32845 for LogLuv). Directory | |
80 | information may be in either little- or big-endian byte | |
81 | order−byte swapping is automatically done by the | |
82 | library. Data bit ordering may be either Most Significant | |
83 | Bit (</big> MSB <big>) to Least Significant Bit (</big> LSB | |
84 | <big>) or</big> LSB <big>to</big> MSB. <big>Finally, the | |
85 | library does not support files in which the | |
86 | <i>BitsPerSample</i>, <i>Compression</i>, | |
87 | <i>MinSampleValue</i>, or <i>MaxSampleValue</i> fields are | |
88 | defined differently on a per-sample basis (in Rev. 6.0 the | |
89 | <i>Compression</i> tag is not defined on a per-sample basis, | |
90 | so this is immaterial).</big></p> | |
91 | </td> | |
92 | </table> | |
93 | <a name="DATA TYPES"></a> | |
94 | <h2>DATA TYPES</h2> | |
95 | <!-- INDENTATION --> | |
96 | <table width="100%" border=0 rules="none" frame="void" | |
97 | cols="2" cellspacing="0" cellpadding="0"> | |
98 | <tr valign="top" align="left"> | |
99 | <td width="8%"></td> | |
100 | <td width="91%"> | |
101 | <p><big>The library makes extensive use of C typedefs to | |
102 | promote portability. Two sets of typedefs are used, one for | |
103 | communication with clients of the library and one for | |
104 | internal data structures and parsing of the</big> TIFF | |
105 | <big>format. The following typedefs are exposed to users | |
106 | either through function definitions or through parameters | |
107 | passed through the varargs interfaces.</big></p></td> | |
108 | </table> | |
109 | <!-- TABS --> | |
110 | <table width="100%" border=0 rules="none" frame="void" | |
111 | cols="3" cellspacing="0" cellpadding="0"> | |
112 | <tr valign="top" align="left"> | |
113 | <td width="15%"></td> | |
114 | <td width="46%"> | |
115 | ||
116 | <p><big>typedef unsigned short uint16;</big></p> | |
117 | </td> | |
118 | <td width="38%"> | |
119 | ||
120 | <p><big>16-bit unsigned integer</big></p> | |
121 | </td> | |
122 | <tr valign="top" align="left"> | |
123 | <td width="15%"></td> | |
124 | <td width="46%"> | |
125 | ||
126 | <p><big>typedef unsigned <<i>thing</i>> | |
127 | uint32;</big></p> | |
128 | </td> | |
129 | <td width="38%"> | |
130 | ||
131 | <p><big>32-bit unsigned integer</big></p> | |
132 | </td> | |
133 | <tr valign="top" align="left"> | |
134 | <td width="15%"></td> | |
135 | <td width="46%"> | |
136 | ||
137 | <p><big>typedef unsigned int ttag_t;</big></p> | |
138 | </td> | |
139 | <td width="38%"> | |
140 | ||
141 | <p><big>directory tag</big></p> | |
142 | </td> | |
143 | <tr valign="top" align="left"> | |
144 | <td width="15%"></td> | |
145 | <td width="46%"> | |
146 | ||
147 | <p><big>typedef uint16 tdir_t;</big></p> | |
148 | </td> | |
149 | <td width="38%"> | |
150 | ||
151 | <p><big>directory index</big></p> | |
152 | </td> | |
153 | <tr valign="top" align="left"> | |
154 | <td width="15%"></td> | |
155 | <td width="46%"> | |
156 | ||
157 | <p><big>typedef uint16 tsample_t;</big></p> | |
158 | </td> | |
159 | <td width="38%"> | |
160 | ||
161 | <p><big>sample number</big></p> | |
162 | </td> | |
163 | <tr valign="top" align="left"> | |
164 | <td width="15%"></td> | |
165 | <td width="46%"> | |
166 | ||
167 | <p><big>typedef uint32 tstrip_t;</big></p> | |
168 | </td> | |
169 | <td width="38%"> | |
170 | ||
171 | <p><big>strip number</big></p> | |
172 | </td> | |
173 | <tr valign="top" align="left"> | |
174 | <td width="15%"></td> | |
175 | <td width="46%"> | |
176 | ||
177 | <p><big>typedef uint32 ttile_t;</big></p> | |
178 | </td> | |
179 | <td width="38%"> | |
180 | ||
181 | <p><big>tile number</big></p> | |
182 | </td> | |
183 | <tr valign="top" align="left"> | |
184 | <td width="15%"></td> | |
185 | <td width="46%"> | |
186 | ||
187 | <p><big>typedef int32 tsize_t;</big></p> | |
188 | </td> | |
189 | <td width="38%"> | |
190 | ||
191 | <p><big>i/o size in bytes</big></p> | |
192 | </td> | |
193 | <tr valign="top" align="left"> | |
194 | <td width="15%"></td> | |
195 | <td width="46%"> | |
196 | ||
197 | <p><big>typedef void* tdata_t;</big></p> | |
198 | </td> | |
199 | <td width="38%"> | |
200 | ||
201 | <p><big>image data ref</big></p> | |
202 | </td> | |
203 | <tr valign="top" align="left"> | |
204 | <td width="15%"></td> | |
205 | <td width="46%"> | |
206 | ||
207 | <p><big>typedef void* thandle_t;</big></p> | |
208 | </td> | |
209 | <td width="38%"> | |
210 | ||
211 | <p><big>client data handle</big></p> | |
212 | </td> | |
213 | <tr valign="top" align="left"> | |
214 | <td width="15%"></td> | |
215 | <td width="46%"> | |
216 | ||
217 | <p><big>typedef int32 toff_t;</big></p> | |
218 | </td> | |
219 | <td width="38%"> | |
220 | ||
221 | <p><big>file offset</big></p> | |
222 | </td> | |
223 | </table> | |
224 | <!-- INDENTATION --> | |
225 | <table width="100%" border=0 rules="none" frame="void" | |
226 | cols="2" cellspacing="0" cellpadding="0"> | |
227 | <tr valign="top" align="left"> | |
228 | <td width="8%"></td> | |
229 | <td width="91%"> | |
230 | <p><big>Note that <i>tstrip_t</i>, <i>ttile_t</i>, and | |
231 | <i>tsize_t</i> are constrained to be no more than 32-bit | |
232 | quantities by 32-bit fields they are stored in in the</big> | |
233 | TIFF <big>image. Likewise <i>tsample_t</i> is limited by the | |
234 | 16-bit field used to store the <i>SamplesPerPixel</i> tag. | |
235 | <i>tdir_t</i> constrains the maximum number of</big> IFDs | |
236 | <big>that may appear in an image and may be an arbitrary | |
237 | size (w/o penalty). <i>ttag_t</i> must be either int, | |
238 | unsigned int, pointer, or double because the library uses a | |
239 | varargs interface and</big> ANSI C <big>restricts the type | |
240 | of the parameter before an ellipsis to be a promoted type. | |
241 | <i>toff_t</i> is defined as int32 because TIFF file offsets | |
242 | are (unsigned) 32-bit quantities. A signed value is used | |
243 | because some interfaces return −1 on error. Finally, | |
244 | note that user-specified data references are passed as | |
245 | opaque handles and only cast at the lowest layers where | |
246 | their type is presumed.</big></p> | |
247 | </td> | |
248 | </table> | |
249 | <a name="LIST OF ROUTINES"></a> | |
250 | <h2>LIST OF ROUTINES</h2> | |
251 | <!-- INDENTATION --> | |
252 | <table width="100%" border=0 rules="none" frame="void" | |
253 | cols="2" cellspacing="0" cellpadding="0"> | |
254 | <tr valign="top" align="left"> | |
255 | <td width="8%"></td> | |
256 | <td width="91%"> | |
257 | <p><big>The following routines are part of the library. | |
258 | Consult specific manual pages for details on their | |
259 | operation; on most systems doing ‘‘man | |
260 | function-name’’ will work.</big></p></td> | |
261 | </table> | |
262 | <!-- TABS --> | |
263 | ||
264 | <p><big><i>Name Description</i></big></p> | |
265 | <!-- TABS --> | |
266 | <table width="100%" border=0 rules="none" frame="void" | |
267 | cols="3" cellspacing="0" cellpadding="0"> | |
268 | <tr valign="top" align="left"> | |
269 | <td width="8%"></td> | |
270 | <td width="23%"> | |
271 | ||
272 | <p><big>TIFFCheckpointDirectory</big></p> | |
273 | </td> | |
274 | <td width="67%"> | |
275 | ||
276 | <p><big>writes the current state of the directory</big></p> | |
277 | </td> | |
278 | <tr valign="top" align="left"> | |
279 | <td width="8%"></td> | |
280 | <td width="23%"> | |
281 | ||
282 | <p><big>TIFFCheckTile</big></p> | |
283 | </td> | |
284 | <td width="67%"> | |
285 | ||
286 | <p><big>very x,y,z,sample is within image</big></p> | |
287 | </td> | |
288 | <tr valign="top" align="left"> | |
289 | <td width="8%"></td> | |
290 | <td width="23%"> | |
291 | ||
292 | <p><big>TIFFCIELabToRGBInit</big></p> | |
293 | </td> | |
294 | <td width="67%"> | |
295 | ||
296 | <p><big>initialize CIE L*a*b* 1976 to RGB conversion | |
297 | state</big></p> | |
298 | </td> | |
299 | <tr valign="top" align="left"> | |
300 | <td width="8%"></td> | |
301 | <td width="23%"> | |
302 | ||
303 | <p><big>TIFFCIELabToXYZ</big></p> | |
304 | </td> | |
305 | <td width="67%"> | |
306 | ||
307 | <p><big>perform CIE L*a*b* 1976 to CIE XYZ | |
308 | conversion</big></p> | |
309 | </td> | |
310 | <tr valign="top" align="left"> | |
311 | <td width="8%"></td> | |
312 | <td width="23%"> | |
313 | ||
314 | <p><big>TIFFClientOpen</big></p> | |
315 | </td> | |
316 | <td width="67%"> | |
317 | ||
318 | <p><big>open a file for reading or writing</big></p> | |
319 | </td> | |
320 | <tr valign="top" align="left"> | |
321 | <td width="8%"></td> | |
322 | <td width="23%"> | |
323 | ||
324 | <p><big>TIFFClose</big></p> | |
325 | </td> | |
326 | <td width="67%"> | |
327 | ||
328 | <p><big>close an open file</big></p> | |
329 | </td> | |
330 | <tr valign="top" align="left"> | |
331 | <td width="8%"></td> | |
332 | <td width="23%"> | |
333 | ||
334 | <p><big>TIFFComputeStrip</big></p> | |
335 | </td> | |
336 | <td width="67%"> | |
337 | ||
338 | <p><big>return strip containing y,sample</big></p> | |
339 | </td> | |
340 | <tr valign="top" align="left"> | |
341 | <td width="8%"></td> | |
342 | <td width="23%"> | |
343 | ||
344 | <p><big>TIFFComputeTile</big></p> | |
345 | </td> | |
346 | <td width="67%"> | |
347 | ||
348 | <p><big>return tile containing x,y,z,sample</big></p> | |
349 | </td> | |
350 | <tr valign="top" align="left"> | |
351 | <td width="8%"></td> | |
352 | <td width="23%"> | |
353 | ||
354 | <p><big>TIFFCurrentDirectory</big></p> | |
355 | </td> | |
356 | <td width="67%"> | |
357 | ||
358 | <p><big>return index of current directory</big></p> | |
359 | </td> | |
360 | <tr valign="top" align="left"> | |
361 | <td width="8%"></td> | |
362 | <td width="23%"> | |
363 | ||
364 | <p><big>TIFFCurrentRow</big></p> | |
365 | </td> | |
366 | <td width="67%"> | |
367 | ||
368 | <p><big>return index of current scanline</big></p> | |
369 | </td> | |
370 | <tr valign="top" align="left"> | |
371 | <td width="8%"></td> | |
372 | <td width="23%"> | |
373 | ||
374 | <p><big>TIFFCurrentStrip</big></p> | |
375 | </td> | |
376 | <td width="67%"> | |
377 | ||
378 | <p><big>return index of current strip</big></p> | |
379 | </td> | |
380 | <tr valign="top" align="left"> | |
381 | <td width="8%"></td> | |
382 | <td width="23%"> | |
383 | ||
384 | <p><big>TIFFCurrentTile</big></p> | |
385 | </td> | |
386 | <td width="67%"> | |
387 | ||
388 | <p><big>return index of current tile</big></p> | |
389 | </td> | |
390 | <tr valign="top" align="left"> | |
391 | <td width="8%"></td> | |
392 | <td width="23%"> | |
393 | ||
394 | <p><big>TIFFDataWidth</big></p> | |
395 | </td> | |
396 | <td width="67%"> | |
397 | ||
398 | <p><big>return the size of TIFF data types</big></p> | |
399 | </td> | |
400 | <tr valign="top" align="left"> | |
401 | <td width="8%"></td> | |
402 | <td width="23%"> | |
403 | ||
404 | <p><big>TIFFError</big></p> | |
405 | </td> | |
406 | <td width="67%"> | |
407 | ||
408 | <p><big>library error handler</big></p> | |
409 | </td> | |
410 | <tr valign="top" align="left"> | |
411 | <td width="8%"></td> | |
412 | <td width="23%"> | |
413 | ||
414 | <p><big>TIFFFdOpen</big></p> | |
415 | </td> | |
416 | <td width="67%"> | |
417 | ||
418 | <p><big>open a file for reading or writing</big></p> | |
419 | </td> | |
420 | <tr valign="top" align="left"> | |
421 | <td width="8%"></td> | |
422 | <td width="23%"> | |
423 | ||
424 | <p><big>TIFFFileName</big></p> | |
425 | </td> | |
426 | <td width="67%"> | |
427 | ||
428 | <p><big>return name of open file</big></p> | |
429 | </td> | |
430 | <tr valign="top" align="left"> | |
431 | <td width="8%"></td> | |
432 | <td width="23%"> | |
433 | ||
434 | <p><big>TIFFFileno</big></p> | |
435 | </td> | |
436 | <td width="67%"> | |
437 | ||
438 | <p><big>return open file descriptor</big></p> | |
439 | </td> | |
440 | <tr valign="top" align="left"> | |
441 | <td width="8%"></td> | |
442 | <td width="23%"> | |
443 | ||
444 | <p><big>TIFFFindCODEC</big></p> | |
445 | </td> | |
446 | <td width="67%"> | |
447 | ||
448 | <p><big>find standard codec for the specific | |
449 | scheme</big></p> | |
450 | </td> | |
451 | <tr valign="top" align="left"> | |
452 | <td width="8%"></td> | |
453 | <td width="23%"> | |
454 | ||
455 | <p><big>TIFFFlush</big></p> | |
456 | </td> | |
457 | <td width="67%"> | |
458 | ||
459 | <p><big>flush all pending writes</big></p> | |
460 | </td> | |
461 | <tr valign="top" align="left"> | |
462 | <td width="8%"></td> | |
463 | <td width="23%"> | |
464 | ||
465 | <p><big>TIFFFlushData</big></p> | |
466 | </td> | |
467 | <td width="67%"> | |
468 | ||
469 | <p><big>flush pending data writes</big></p> | |
470 | </td> | |
471 | <tr valign="top" align="left"> | |
472 | <td width="8%"></td> | |
473 | <td width="23%"> | |
474 | ||
475 | <p><big>TIFFGetBitRevTable</big></p> | |
476 | </td> | |
477 | <td width="67%"> | |
478 | ||
479 | <p><big>return bit reversal table</big></p> | |
480 | </td> | |
481 | <tr valign="top" align="left"> | |
482 | <td width="8%"></td> | |
483 | <td width="23%"> | |
484 | ||
485 | <p><big>TIFFGetField</big></p> | |
486 | </td> | |
487 | <td width="67%"> | |
488 | ||
489 | <p><big>return tag value in current directory</big></p> | |
490 | </td> | |
491 | <tr valign="top" align="left"> | |
492 | <td width="8%"></td> | |
493 | <td width="23%"> | |
494 | ||
495 | <p><big>TIFFGetFieldDefaulted</big></p> | |
496 | </td> | |
497 | <td width="67%"> | |
498 | ||
499 | <p><big>return tag value in current directory</big></p> | |
500 | </td> | |
501 | <tr valign="top" align="left"> | |
502 | <td width="8%"></td> | |
503 | <td width="23%"> | |
504 | ||
505 | <p><big>TIFFGetMode</big></p> | |
506 | </td> | |
507 | <td width="67%"> | |
508 | ||
509 | <p><big>return open file mode</big></p> | |
510 | </td> | |
511 | <tr valign="top" align="left"> | |
512 | <td width="8%"></td> | |
513 | <td width="23%"> | |
514 | ||
515 | <p><big>TIFFGetVersion</big></p> | |
516 | </td> | |
517 | <td width="67%"> | |
518 | ||
519 | <p><big>return library version string</big></p> | |
520 | </td> | |
521 | <tr valign="top" align="left"> | |
522 | <td width="8%"></td> | |
523 | <td width="23%"> | |
524 | ||
525 | <p><big>TIFFIsCODECConfigured</big></p> | |
526 | </td> | |
527 | <td width="67%"> | |
528 | ||
529 | <p><big>check, whether we have working codec</big></p> | |
530 | </td> | |
531 | <tr valign="top" align="left"> | |
532 | <td width="8%"></td> | |
533 | <td width="23%"> | |
534 | ||
535 | <p><big>TIFFIsMSB2LSB</big></p> | |
536 | </td> | |
537 | <td width="67%"> | |
538 | ||
539 | <p><big>return true if image data is being | |
540 | returned</big></p> | |
541 | </td> | |
542 | <tr valign="top" align="left"> | |
543 | <td width="8%"></td> | |
544 | <td width="23%"></td> | |
545 | <td width="67%"> | |
546 | ||
547 | <p><big>with bit 0 as the most significant bit</big></p> | |
548 | </td> | |
549 | <tr valign="top" align="left"> | |
550 | <td width="8%"></td> | |
551 | <td width="23%"> | |
552 | ||
553 | <p><big>TIFFIsTiled</big></p> | |
554 | </td> | |
555 | <td width="67%"> | |
556 | ||
557 | <p><big>return true if image data is tiled</big></p> | |
558 | </td> | |
559 | <tr valign="top" align="left"> | |
560 | <td width="8%"></td> | |
561 | <td width="23%"> | |
562 | ||
563 | <p><big>TIFFIsByteSwapped</big></p> | |
564 | </td> | |
565 | <td width="67%"> | |
566 | ||
567 | <p><big>return true if image data is byte-swapped</big></p> | |
568 | </td> | |
569 | <tr valign="top" align="left"> | |
570 | <td width="8%"></td> | |
571 | <td width="23%"> | |
572 | ||
573 | <p><big>TIFFNumberOfStrips</big></p> | |
574 | </td> | |
575 | <td width="67%"> | |
576 | ||
577 | <p><big>return number of strips in an image</big></p> | |
578 | </td> | |
579 | <tr valign="top" align="left"> | |
580 | <td width="8%"></td> | |
581 | <td width="23%"> | |
582 | ||
583 | <p><big>TIFFNumberOfTiles</big></p> | |
584 | </td> | |
585 | <td width="67%"> | |
586 | ||
587 | <p><big>return number of tiles in an image</big></p> | |
588 | </td> | |
589 | <tr valign="top" align="left"> | |
590 | <td width="8%"></td> | |
591 | <td width="23%"> | |
592 | ||
593 | <p><big>TIFFOpen</big></p> | |
594 | </td> | |
595 | <td width="67%"> | |
596 | ||
597 | <p><big>open a file for reading or writing</big></p> | |
598 | </td> | |
599 | <tr valign="top" align="left"> | |
600 | <td width="8%"></td> | |
601 | <td width="23%"> | |
602 | ||
603 | <p><big>TIFFPrintDirectory</big></p> | |
604 | </td> | |
605 | <td width="67%"> | |
606 | ||
607 | <p><big>print description of the current | |
608 | directory</big></p> | |
609 | </td> | |
610 | <tr valign="top" align="left"> | |
611 | <td width="8%"></td> | |
612 | <td width="23%"> | |
613 | ||
614 | <p><big>TIFFReadBufferSetup</big></p> | |
615 | </td> | |
616 | <td width="67%"> | |
617 | ||
618 | <p><big>specify i/o buffer for reading</big></p> | |
619 | </td> | |
620 | <tr valign="top" align="left"> | |
621 | <td width="8%"></td> | |
622 | <td width="23%"> | |
623 | ||
624 | <p><big>TIFFReadDirectory</big></p> | |
625 | </td> | |
626 | <td width="67%"> | |
627 | ||
628 | <p><big>read the next directory</big></p> | |
629 | </td> | |
630 | <tr valign="top" align="left"> | |
631 | <td width="8%"></td> | |
632 | <td width="23%"> | |
633 | ||
634 | <p><big>TIFFReadEncodedStrip</big></p> | |
635 | </td> | |
636 | <td width="67%"> | |
637 | ||
638 | <p><big>read and decode a strip of data</big></p> | |
639 | </td> | |
640 | <tr valign="top" align="left"> | |
641 | <td width="8%"></td> | |
642 | <td width="23%"> | |
643 | ||
644 | <p><big>TIFFReadEncodedTile</big></p> | |
645 | </td> | |
646 | <td width="67%"> | |
647 | ||
648 | <p><big>read and decode a tile of data</big></p> | |
649 | </td> | |
650 | <tr valign="top" align="left"> | |
651 | <td width="8%"></td> | |
652 | <td width="23%"> | |
653 | ||
654 | <p><big>TIFFReadRawStrip</big></p> | |
655 | </td> | |
656 | <td width="67%"> | |
657 | ||
658 | <p><big>read a raw strip of data</big></p> | |
659 | </td> | |
660 | <tr valign="top" align="left"> | |
661 | <td width="8%"></td> | |
662 | <td width="23%"> | |
663 | ||
664 | <p><big>TIFFReadRawTile</big></p> | |
665 | </td> | |
666 | <td width="67%"> | |
667 | ||
668 | <p><big>read a raw tile of data</big></p> | |
669 | </td> | |
670 | <tr valign="top" align="left"> | |
671 | <td width="8%"></td> | |
672 | <td width="23%"> | |
673 | ||
674 | <p><big>TIFFReadRGBAImage</big></p> | |
675 | </td> | |
676 | <td width="67%"> | |
677 | ||
678 | <p><big>read an image into a fixed format raster</big></p> | |
679 | </td> | |
680 | <tr valign="top" align="left"> | |
681 | <td width="8%"></td> | |
682 | <td width="23%"> | |
683 | ||
684 | <p><big>TIFFReadScanline</big></p> | |
685 | </td> | |
686 | <td width="67%"> | |
687 | ||
688 | <p><big>read and decode a row of data</big></p> | |
689 | </td> | |
690 | <tr valign="top" align="left"> | |
691 | <td width="8%"></td> | |
692 | <td width="23%"> | |
693 | ||
694 | <p><big>TIFFReadTile</big></p> | |
695 | </td> | |
696 | <td width="67%"> | |
697 | ||
698 | <p><big>read and decode a tile of data</big></p> | |
699 | </td> | |
700 | <tr valign="top" align="left"> | |
701 | <td width="8%"></td> | |
702 | <td width="23%"> | |
703 | ||
704 | <p><big>TIFFRegisterCODEC</big></p> | |
705 | </td> | |
706 | <td width="67%"> | |
707 | ||
708 | <p><big>override standard codec for the specific | |
709 | scheme</big></p> | |
710 | </td> | |
711 | <tr valign="top" align="left"> | |
712 | <td width="8%"></td> | |
713 | <td width="23%"> | |
714 | ||
715 | <p><big>TIFFReverseBits</big></p> | |
716 | </td> | |
717 | <td width="67%"> | |
718 | ||
719 | <p><big>reverse bits in an array of bytes</big></p> | |
720 | </td> | |
721 | <tr valign="top" align="left"> | |
722 | <td width="8%"></td> | |
723 | <td width="23%"> | |
724 | ||
725 | <p><big>TIFFRGBAImageBegin</big></p> | |
726 | </td> | |
727 | <td width="67%"> | |
728 | ||
729 | <p><big>setup decoder state for TIFFRGBAImageGet</big></p> | |
730 | </td> | |
731 | <tr valign="top" align="left"> | |
732 | <td width="8%"></td> | |
733 | <td width="23%"> | |
734 | ||
735 | <p><big>TIFFRGBAImageEnd</big></p> | |
736 | </td> | |
737 | <td width="67%"> | |
738 | ||
739 | <p><big>release TIFFRGBAImage decoder state</big></p> | |
740 | </td> | |
741 | <tr valign="top" align="left"> | |
742 | <td width="8%"></td> | |
743 | <td width="23%"> | |
744 | ||
745 | <p><big>TIFFRGBAImageGet</big></p> | |
746 | </td> | |
747 | <td width="67%"> | |
748 | ||
749 | <p><big>read and decode an image</big></p> | |
750 | </td> | |
751 | <tr valign="top" align="left"> | |
752 | <td width="8%"></td> | |
753 | <td width="23%"> | |
754 | ||
755 | <p><big>TIFFRGBAImageOK</big></p> | |
756 | </td> | |
757 | <td width="67%"> | |
758 | ||
759 | <p><big>is image readable by TIFFRGBAImageGet</big></p> | |
760 | </td> | |
761 | <tr valign="top" align="left"> | |
762 | <td width="8%"></td> | |
763 | <td width="23%"> | |
764 | ||
765 | <p><big>TIFFScanlineSize</big></p> | |
766 | </td> | |
767 | <td width="67%"> | |
768 | ||
769 | <p><big>return size of a scanline</big></p> | |
770 | </td> | |
771 | <tr valign="top" align="left"> | |
772 | <td width="8%"></td> | |
773 | <td width="23%"> | |
774 | ||
775 | <p><big>TIFFSetDirectory</big></p> | |
776 | </td> | |
777 | <td width="67%"> | |
778 | ||
779 | <p><big>set the current directory</big></p> | |
780 | </td> | |
781 | <tr valign="top" align="left"> | |
782 | <td width="8%"></td> | |
783 | <td width="23%"> | |
784 | ||
785 | <p><big>TIFFSetSubDirectory</big></p> | |
786 | </td> | |
787 | <td width="67%"> | |
788 | ||
789 | <p><big>set the current directory</big></p> | |
790 | </td> | |
791 | <tr valign="top" align="left"> | |
792 | <td width="8%"></td> | |
793 | <td width="23%"> | |
794 | ||
795 | <p><big>TIFFSetErrorHandler</big></p> | |
796 | </td> | |
797 | <td width="67%"> | |
798 | ||
799 | <p><big>set error handler function</big></p> | |
800 | </td> | |
801 | <tr valign="top" align="left"> | |
802 | <td width="8%"></td> | |
803 | <td width="23%"> | |
804 | ||
805 | <p><big>TIFFSetField</big></p> | |
806 | </td> | |
807 | <td width="67%"> | |
808 | ||
809 | <p><big>set a tag’s value in the current | |
810 | directory</big></p> | |
811 | </td> | |
812 | <tr valign="top" align="left"> | |
813 | <td width="8%"></td> | |
814 | <td width="23%"> | |
815 | ||
816 | <p><big>TIFFSetWarningHandler</big></p> | |
817 | </td> | |
818 | <td width="67%"> | |
819 | ||
820 | <p><big>set warning handler function</big></p> | |
821 | </td> | |
822 | <tr valign="top" align="left"> | |
823 | <td width="8%"></td> | |
824 | <td width="23%"> | |
825 | ||
826 | <p><big>TIFFStripSize</big></p> | |
827 | </td> | |
828 | <td width="67%"> | |
829 | ||
830 | <p><big>returns size of a strip</big></p> | |
831 | </td> | |
832 | <tr valign="top" align="left"> | |
833 | <td width="8%"></td> | |
834 | <td width="23%"> | |
835 | ||
836 | <p><big>TIFFRawStripSize</big></p> | |
837 | </td> | |
838 | <td width="67%"> | |
839 | ||
840 | <p><big>returns the number of bytes in a raw | |
841 | strip</big></p> | |
842 | </td> | |
843 | <tr valign="top" align="left"> | |
844 | <td width="8%"></td> | |
845 | <td width="23%"> | |
846 | ||
847 | <p><big>TIFFSwabShort</big></p> | |
848 | </td> | |
849 | <td width="67%"> | |
850 | ||
851 | <p><big>swap bytes of short</big></p> | |
852 | </td> | |
853 | <tr valign="top" align="left"> | |
854 | <td width="8%"></td> | |
855 | <td width="23%"> | |
856 | ||
857 | <p><big>TIFFSwabLong</big></p> | |
858 | </td> | |
859 | <td width="67%"> | |
860 | ||
861 | <p><big>swap bytes of long</big></p> | |
862 | </td> | |
863 | <tr valign="top" align="left"> | |
864 | <td width="8%"></td> | |
865 | <td width="23%"> | |
866 | ||
867 | <p><big>TIFFSwabArrayOfShort</big></p> | |
868 | </td> | |
869 | <td width="67%"> | |
870 | ||
871 | <p><big>swap bytes of an array of shorts</big></p> | |
872 | </td> | |
873 | <tr valign="top" align="left"> | |
874 | <td width="8%"></td> | |
875 | <td width="23%"> | |
876 | ||
877 | <p><big>TIFFSwabArrayOfLong</big></p> | |
878 | </td> | |
879 | <td width="67%"> | |
880 | ||
881 | <p><big>swap bytes of an array of longs</big></p> | |
882 | </td> | |
883 | <tr valign="top" align="left"> | |
884 | <td width="8%"></td> | |
885 | <td width="23%"> | |
886 | ||
887 | <p><big>TIFFTileRowSize</big></p> | |
888 | </td> | |
889 | <td width="67%"> | |
890 | ||
891 | <p><big>return size of a row in a tile</big></p> | |
892 | </td> | |
893 | <tr valign="top" align="left"> | |
894 | <td width="8%"></td> | |
895 | <td width="23%"> | |
896 | ||
897 | <p><big>TIFFTileSize</big></p> | |
898 | </td> | |
899 | <td width="67%"> | |
900 | ||
901 | <p><big>return size of a tile</big></p> | |
902 | </td> | |
903 | <tr valign="top" align="left"> | |
904 | <td width="8%"></td> | |
905 | <td width="23%"> | |
906 | ||
907 | <p><big>TIFFUnRegisterCODEC</big></p> | |
908 | </td> | |
909 | <td width="67%"> | |
910 | ||
911 | <p><big>unregisters the codec</big></p> | |
912 | </td> | |
913 | <tr valign="top" align="left"> | |
914 | <td width="8%"></td> | |
915 | <td width="23%"> | |
916 | ||
917 | <p><big>TIFFVGetField</big></p> | |
918 | </td> | |
919 | <td width="67%"> | |
920 | ||
921 | <p><big>return tag value in current directory</big></p> | |
922 | </td> | |
923 | <tr valign="top" align="left"> | |
924 | <td width="8%"></td> | |
925 | <td width="23%"> | |
926 | ||
927 | <p><big>TIFFVGetFieldDefaulted</big></p> | |
928 | </td> | |
929 | <td width="67%"> | |
930 | ||
931 | <p><big>return tag value in current directory</big></p> | |
932 | </td> | |
933 | <tr valign="top" align="left"> | |
934 | <td width="8%"></td> | |
935 | <td width="23%"> | |
936 | ||
937 | <p><big>TIFFVSetField</big></p> | |
938 | </td> | |
939 | <td width="67%"> | |
940 | ||
941 | <p><big>set a tag’s value in the current | |
942 | directory</big></p> | |
943 | </td> | |
944 | <tr valign="top" align="left"> | |
945 | <td width="8%"></td> | |
946 | <td width="23%"> | |
947 | ||
948 | <p><big>TIFFVStripSize</big></p> | |
949 | </td> | |
950 | <td width="67%"> | |
951 | ||
952 | <p><big>returns the number of bytes in a strip</big></p> | |
953 | </td> | |
954 | <tr valign="top" align="left"> | |
955 | <td width="8%"></td> | |
956 | <td width="23%"> | |
957 | ||
958 | <p><big>TIFFWarning</big></p> | |
959 | </td> | |
960 | <td width="67%"> | |
961 | ||
962 | <p><big>library warning handler</big></p> | |
963 | </td> | |
964 | <tr valign="top" align="left"> | |
965 | <td width="8%"></td> | |
966 | <td width="23%"> | |
967 | ||
968 | <p><big>TIFFWriteDirectory</big></p> | |
969 | </td> | |
970 | <td width="67%"> | |
971 | ||
972 | <p><big>write the current directory</big></p> | |
973 | </td> | |
974 | <tr valign="top" align="left"> | |
975 | <td width="8%"></td> | |
976 | <td width="23%"> | |
977 | ||
978 | <p><big>TIFFWriteEncodedStrip</big></p> | |
979 | </td> | |
980 | <td width="67%"> | |
981 | ||
982 | <p><big>compress and write a strip of data</big></p> | |
983 | </td> | |
984 | <tr valign="top" align="left"> | |
985 | <td width="8%"></td> | |
986 | <td width="23%"> | |
987 | ||
988 | <p><big>TIFFWriteEncodedTile</big></p> | |
989 | </td> | |
990 | <td width="67%"> | |
991 | ||
992 | <p><big>compress and write a tile of data</big></p> | |
993 | </td> | |
994 | <tr valign="top" align="left"> | |
995 | <td width="8%"></td> | |
996 | <td width="23%"> | |
997 | ||
998 | <p><big>TIFFWriteRawStrip</big></p> | |
999 | </td> | |
1000 | <td width="67%"> | |
1001 | ||
1002 | <p><big>write a raw strip of data</big></p> | |
1003 | </td> | |
1004 | <tr valign="top" align="left"> | |
1005 | <td width="8%"></td> | |
1006 | <td width="23%"> | |
1007 | ||
1008 | <p><big>TIFFWriteRawTile</big></p> | |
1009 | </td> | |
1010 | <td width="67%"> | |
1011 | ||
1012 | <p><big>write a raw tile of data</big></p> | |
1013 | </td> | |
1014 | <tr valign="top" align="left"> | |
1015 | <td width="8%"></td> | |
1016 | <td width="23%"> | |
1017 | ||
1018 | <p><big>TIFFWriteScanline</big></p> | |
1019 | </td> | |
1020 | <td width="67%"> | |
1021 | ||
1022 | <p><big>write a scanline of data</big></p> | |
1023 | </td> | |
1024 | <tr valign="top" align="left"> | |
1025 | <td width="8%"></td> | |
1026 | <td width="23%"> | |
1027 | ||
1028 | <p><big>TIFFWriteTile</big></p> | |
1029 | </td> | |
1030 | <td width="67%"> | |
1031 | ||
1032 | <p><big>compress and write a tile of data</big></p> | |
1033 | </td> | |
1034 | <tr valign="top" align="left"> | |
1035 | <td width="8%"></td> | |
1036 | <td width="23%"> | |
1037 | ||
1038 | <p><big>TIFFXYZToRGB</big></p> | |
1039 | </td> | |
1040 | <td width="67%"> | |
1041 | ||
1042 | <p><big>perform CIE XYZ to RGB conversion</big></p> | |
1043 | </td> | |
1044 | <tr valign="top" align="left"> | |
1045 | <td width="8%"></td> | |
1046 | <td width="23%"> | |
1047 | ||
1048 | <p><big>TIFFYCbCrToRGBInit</big></p> | |
1049 | </td> | |
1050 | <td width="67%"> | |
1051 | ||
1052 | <p><big>initialize YCbCr to RGB conversion state</big></p> | |
1053 | </td> | |
1054 | <tr valign="top" align="left"> | |
1055 | <td width="8%"></td> | |
1056 | <td width="23%"> | |
1057 | ||
1058 | <p><big>TIFFYCbCrtoRGB</big></p> | |
1059 | </td> | |
1060 | <td width="67%"> | |
1061 | ||
1062 | <p><big>perform YCbCr to RGB conversion</big></p> | |
1063 | </td> | |
1064 | </table> | |
1065 | <!-- INDENTATION --> | |
1066 | <table width="100%" border=0 rules="none" frame="void" | |
1067 | cols="2" cellspacing="0" cellpadding="0"> | |
1068 | <tr valign="top" align="left"> | |
1069 | <td width="8%"></td> | |
1070 | <td width="91%"> | |
1071 | <p><big>Auxiliary functions:</big></p></td> | |
1072 | </table> | |
1073 | <!-- TABS --> | |
1074 | <table width="100%" border=0 rules="none" frame="void" | |
1075 | cols="3" cellspacing="0" cellpadding="0"> | |
1076 | <tr valign="top" align="left"> | |
1077 | <td width="8%"></td> | |
1078 | <td width="23%"> | |
1079 | ||
1080 | <p><big>_TIFFfree</big></p> | |
1081 | </td> | |
1082 | <td width="67%"> | |
1083 | ||
1084 | <p><big>free memory buffer</big></p> | |
1085 | </td> | |
1086 | <tr valign="top" align="left"> | |
1087 | <td width="8%"></td> | |
1088 | <td width="23%"> | |
1089 | ||
1090 | <p><big>_TIFFmalloc</big></p> | |
1091 | </td> | |
1092 | <td width="67%"> | |
1093 | ||
1094 | <p><big>dynamically allocate memory buffer</big></p> | |
1095 | </td> | |
1096 | <tr valign="top" align="left"> | |
1097 | <td width="8%"></td> | |
1098 | <td width="23%"> | |
1099 | ||
1100 | <p><big>_TIFFmemcmp</big></p> | |
1101 | </td> | |
1102 | <td width="67%"> | |
1103 | ||
1104 | <p><big>compare contents of the memory buffers</big></p> | |
1105 | </td> | |
1106 | <tr valign="top" align="left"> | |
1107 | <td width="8%"></td> | |
1108 | <td width="23%"> | |
1109 | ||
1110 | <p><big>_TIFFmemcpy</big></p> | |
1111 | </td> | |
1112 | <td width="67%"> | |
1113 | ||
1114 | <p><big>copy contents of the one buffer to | |
1115 | another</big></p> | |
1116 | </td> | |
1117 | <tr valign="top" align="left"> | |
1118 | <td width="8%"></td> | |
1119 | <td width="23%"> | |
1120 | ||
1121 | <p><big>_TIFFmemset</big></p> | |
1122 | </td> | |
1123 | <td width="67%"> | |
1124 | ||
1125 | <p><big>fill memory buffer with a constant byte</big></p> | |
1126 | </td> | |
1127 | <tr valign="top" align="left"> | |
1128 | <td width="8%"></td> | |
1129 | <td width="23%"> | |
1130 | ||
1131 | <p><big>_TIFFrealloc</big></p> | |
1132 | </td> | |
1133 | <td width="67%"> | |
1134 | ||
1135 | <p><big>dynamically reallocate memory buffer</big></p> | |
1136 | </td> | |
1137 | </table> | |
1138 | <a name="TAG USAGE"></a> | |
1139 | <h2>TAG USAGE</h2> | |
1140 | <!-- INDENTATION --> | |
1141 | <table width="100%" border=0 rules="none" frame="void" | |
1142 | cols="2" cellspacing="0" cellpadding="0"> | |
1143 | <tr valign="top" align="left"> | |
1144 | <td width="8%"></td> | |
1145 | <td width="91%"> | |
1146 | <p><big>The table below lists the</big> TIFF <big>tags that | |
1147 | are recognized and handled by the library. If no use is | |
1148 | indicated in the table, then the library reads and writes | |
1149 | the tag, but does not use it internally. Note that some tags | |
80ed523f | 1150 | are meaningful only when a particul |