1<!-- Creator : groff version 1.18.1 --> 2<!-- CreationDate: Fri Dec 30 00:55:54 2005 --> 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 33library 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 59data files encoded with the <i>Tag Image File</i> format, 60Revision 6.0 (or revision 5.0 or revision 4.0). This file 61format is suitable for archiving multi-color and 62monochromatic image data.</big></p> 63<!-- INDENTATION --> 64<p><big>The library supports several compression algorithms, 65as indicated by the <i>Compression</i> field, including: no 66compression (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), 69Lempel-Ziv & Welch compression (5), baseline JPEG 70compression (7), word-aligned 1D Huffman compression 71(32771), and PackBits compression (32773). In addition, 72several nonstandard compression algorithms are supported: 73the 4-bit compression algorithm used by the 74<i>ThunderScan</i> program (32809) (decompression only), 75NeXT’s 2-bit compression algorithm (32766) 76(decompression only), an experimental LZ-style algorithm 77known as Deflate (32946), and an experimental CIE LogLuv 78compression scheme designed for images with high dynamic 79range (32845 for LogL and 32845 for LogLuv). Directory 80information may be in either little- or big-endian byte 81order−byte swapping is automatically done by the 82library. Data bit ordering may be either Most Significant 83Bit (</big> MSB <big>) to Least Significant Bit (</big> LSB 84<big>) or</big> LSB <big>to</big> MSB. <big>Finally, the 85library does not support files in which the 86<i>BitsPerSample</i>, <i>Compression</i>, 87<i>MinSampleValue</i>, or <i>MaxSampleValue</i> fields are 88defined differently on a per-sample basis (in Rev. 6.0 the 89<i>Compression</i> tag is not defined on a per-sample basis, 90so 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 102promote portability. Two sets of typedefs are used, one for 103communication with clients of the library and one for 104internal data structures and parsing of the</big> TIFF 105<big>format. The following typedefs are exposed to users 106either through function definitions or through parameters 107passed 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>> 127uint32;</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 232quantities by 32-bit fields they are stored in in the</big> 233TIFF <big>image. Likewise <i>tsample_t</i> is limited by the 23416-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 237size (w/o penalty). <i>ttag_t</i> must be either int, 238unsigned int, pointer, or double because the library uses a 239varargs interface and</big> ANSI C <big>restricts the type 240of the parameter before an ellipsis to be a promoted type. 241<i>toff_t</i> is defined as int32 because TIFF file offsets 242are (unsigned) 32-bit quantities. A signed value is used 243because some interfaces return −1 on error. Finally, 244note that user-specified data references are passed as 245opaque handles and only cast at the lowest layers where 246their 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. 258Consult specific manual pages for details on their 259operation; on most systems doing ‘‘man 260function-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 297state</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 308conversion</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 449scheme</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 540returned</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 608directory</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 709scheme</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 810directory</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 841strip</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 942directory</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 1115another</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 1147are recognized and handled by the library. If no use is 1148indicated in the table, then the library reads and writes 1149the tag, but does not use it internally. Note that some tags 1150are meaningful only when a particular compression scheme is 1151being used; e.g. <i>Group3Options</i> is only useful if 1152<i>Compression</i> is set to</big> CCITT <big>Group 3 1153encoding. Tags of this sort are considered 1154<i>codec-specific</i> tags and the library does not 1155recognize them except when the <i>Compression</i> tag has 1156been previously set to the relevant compression 1157scheme.</big></p> 1158<!-- INDENTATION --> 1159<pre><big><i>Tag Name Value R/W Library Use/Notes 1160</i></big></pre> 1161</td> 1162</table> 1163<!-- TABS --> 1164 1165<table width="100%" border=0 rules="none" frame="void" 1166 cols="5" cellspacing="0" cellpadding="0"> 1167<tr valign="top" align="left"> 1168<td width="8%"></td> 1169<td width="21%"> 1170 1171<p><big>Artist</big></p> 1172</td> 1173<td width="8%"></td> 1174<td width="6%"> 1175 1176<p><big>315</big></p> 1177</td> 1178<td width="53%"> 1179 1180<p><big>R/W</big></p> 1181</td> 1182<tr valign="top" align="left"> 1183<td width="8%"></td> 1184<td width="21%"> 1185 1186<p><big>BadFaxLines</big></p> 1187</td> 1188<td width="8%"></td> 1189<td width="6%"> 1190 1191<p><big>326</big></p> 1192</td> 1193<td width="53%"> 1194 1195<p><big>R/W</big></p> 1196</td> 1197<tr valign="top" align="left"> 1198<td width="8%"></td> 1199<td width="21%"> 1200 1201<p><big>BitsPerSample</big></p> 1202</td> 1203<td width="8%"></td> 1204<td width="6%"> 1205 1206<p><big>258</big></p> 1207</td> 1208<td width="53%"> 1209 1210<p><big>R/W</big></p> 1211</td> 1212<tr valign="top" align="left"> 1213<td width="8%"></td> 1214<td width="21%"></td> 1215<td width="8%"></td> 1216<td width="6%"></td> 1217<td width="53%"> 1218 1219<p><big>lots</big></p> 1220</td> 1221<tr valign="top" align="left"> 1222<td width="8%"></td> 1223<td width="21%"> 1224 1225<p><big>CellLength</big></p> 1226</td> 1227<td width="8%"></td> 1228<td width="6%"> 1229 1230<p><big>265</big></p> 1231</td> 1232<td width="53%"> 1233</td> 1234<tr valign="top" align="left"> 1235<td width="8%"></td> 1236<td width="21%"></td> 1237<td width="8%"></td> 1238<td width="6%"></td> 1239<td width="53%"> 1240 1241<p><big>parsed but ignored</big></p> 1242</td> 1243<tr valign="top" align="left"> 1244<td width="8%"></td> 1245<td width="21%"> 1246 1247<p><big>CellWidth</big></p> 1248</td> 1249<td width="8%"></td> 1250<td width="6%"> 1251 1252<p><big>264</big></p> 1253</td> 1254<td width="53%"> 1255</td> 1256<tr valign="top" align="left"> 1257<td width="8%"></td> 1258<td width="21%"></td> 1259<td width="8%"></td> 1260<td width="6%"></td> 1261<td width="53%"> 1262 1263<p><big>parsed but ignored</big></p> 1264</td> 1265<tr valign="top" align="left"> 1266<td width="8%"></td> 1267<td width="21%"> 1268 1269<p><big>CleanFaxData</big></p> 1270</td> 1271<td width="8%"></td> 1272<td width="6%"> 1273 1274<p><big>327</big></p> 1275</td> 1276<td width="53%"> 1277 1278<p><big>R/W</big></p> 1279</td> 1280<tr valign="top" align="left"> 1281<td width="8%"></td> 1282<td width="21%"> 1283 1284<p><big>ColorMap</big></p> 1285</td> 1286<td width="8%"></td> 1287<td width="6%"> 1288 1289<p><big>320</big></p> 1290</td> 1291<td width="53%"> 1292 1293<p><big>R/W</big></p> 1294</td> 1295<tr valign="top" align="left"> 1296<td width="8%"></td> 1297<td width="21%"> 1298 1299<p><big>ColorResponseUnit</big></p> 1300</td> 1301<td width="8%"></td> 1302<td width="6%"> 1303 1304<p><big>300</big></p> 1305</td> 1306<td width="53%"> 1307</td> 1308<tr valign="top" align="left"> 1309<td width="8%"></td> 1310<td width="21%"></td> 1311<td width="8%"></td> 1312<td width="6%"></td> 1313<td width="53%"> 1314 1315<p><big>parsed but ignored</big></p> 1316</td> 1317<tr valign="top" align="left"> 1318<td width="8%"></td> 1319<td width="21%"> 1320 1321<p><big>Compression</big></p> 1322</td> 1323<td width="8%"></td> 1324<td width="6%"> 1325 1326<p><big>259</big></p> 1327</td> 1328<td width="53%"> 1329 1330<p><big>R/W</big></p> 1331</td> 1332<tr valign="top" align="left"> 1333<td width="8%"></td> 1334<td width="21%"></td> 1335<td width="8%"></td> 1336<td width="6%"></td> 1337<td width="53%"> 1338 1339<p><big>choosing codec</big></p> 1340</td> 1341<tr valign="top" align="left"> 1342<td width="8%"></td> 1343<td width="21%"> 1344 1345<p><big>ConsecutiveBadFaxLines</big></p> 1346</td> 1347<td width="8%"></td> 1348<td width="6%"> 1349 1350<p><big>328</big></p> 1351</td> 1352<td width="53%"> 1353 1354<p><big>R/W</big></p> 1355</td> 1356</table> 1357<!-- INDENTATION --> 1358<table width="100%" border=0 rules="none" frame="void" 1359 cols="2" cellspacing="0" cellpadding="0"> 1360<tr valign="top" align="left"> 1361<td width="8%"></td> 1362<td width="91%"> 1363<p><big>Copyright 33432 R/W</big></p></td> 1364</table> 1365<!-- TABS --> 1366<table width="100%" border=0 rules="none" frame="void" 1367 cols="5" cellspacing="0" cellpadding="0"> 1368<tr valign="top" align="left"> 1369<td width="8%"></td> 1370<td width="21%"> 1371 1372<p><big>DataType</big></p> 1373</td> 1374<td width="8%"></td> 1375<td width="6%"> 1376 1377<p><big>32996</big></p> 1378</td> 1379<td width="53%"> 1380 1381<p><big>R</big></p> 1382</td> 1383<tr valign="top" align="left"> 1384<td width="8%"></td> 1385<td width="21%"></td> 1386<td width="8%"></td> 1387<td width="6%"></td> 1388<td width="53%"> 1389 1390<p><big>obsoleted by SampleFormat tag</big></p> 1391</td> 1392<tr valign="top" align="left"> 1393<td width="8%"></td> 1394<td width="21%"> 1395 1396<p><big>DateTime</big></p> 1397</td> 1398<td width="8%"></td> 1399<td width="6%"> 1400 1401<p><big>306</big></p> 1402</td> 1403<td width="53%"> 1404 1405<p><big>R/W</big></p> 1406</td> 1407<tr valign="top" align="left"> 1408<td width="8%"></td> 1409<td width="21%"> 1410 1411<p><big>DocumentName</big></p> 1412</td> 1413<td width="8%"></td> 1414<td width="6%"> 1415 1416<p><big>269</big></p> 1417</td> 1418<td width="53%"> 1419 1420<p><big>R/W</big></p> 1421</td> 1422<tr valign="top" align="left"> 1423<td width="8%"></td> 1424<td width="21%"> 1425 1426<p><big>DotRange</big></p> 1427</td> 1428<td width="8%"></td> 1429<td width="6%"> 1430 1431<p><big>336</big></p> 1432</td> 1433<td width="53%"> 1434 1435<p><big>R/W</big></p> 1436</td> 1437<tr valign="top" align="left"> 1438<td width="8%"></td> 1439<td width="21%"> 1440 1441<p><big>ExtraSamples</big></p> 1442</td> 1443<td width="8%"></td> 1444<td width="6%"> 1445 1446<p><big>338</big></p> 1447</td> 1448<td width="53%"> 1449 1450<p><big>R/W</big></p> 1451</td> 1452<tr valign="top" align="left"> 1453<td width="8%"></td> 1454<td width="21%"></td> 1455<td width="8%"></td> 1456<td width="6%"></td> 1457<td width="53%"> 1458 1459<p><big>lots</big></p> 1460</td> 1461<tr valign="top" align="left"> 1462<td width="8%"></td> 1463<td width="21%"> 1464 1465<p><big>FaxRecvParams</big></p> 1466</td> 1467<td width="8%"></td> 1468<td width="6%"> 1469 1470<p><big>34908</big></p> 1471</td> 1472<td width="53%"> 1473 1474<p><big>R/W</big></p> 1475</td> 1476<tr valign="top" align="left"> 1477<td width="8%"></td> 1478<td width="21%"> 1479 1480<p><big>FaxSubAddress</big></p> 1481</td> 1482<td width="8%"></td> 1483<td width="6%"> 1484 1485<p><big>34909</big></p> 1486</td> 1487<td width="53%"> 1488 1489<p><big>R/W</big></p> 1490</td> 1491<tr valign="top" align="left"> 1492<td width="8%"></td> 1493<td width="21%"> 1494 1495<p><big>FaxRecvTime</big></p> 1496</td> 1497<td width="8%"></td> 1498<td width="6%"> 1499 1500<p><big>34910</big></p> 1501</td> 1502<td width="53%"> 1503 1504<p><big>R/W</big></p> 1505</td> 1506<tr valign="top" align="left"> 1507<td width="8%"></td> 1508<td width="21%"> 1509 1510<p><big>FillOrder</big></p> 1511</td> 1512<td width="8%"></td> 1513<td width="6%"> 1514 1515<p><big>266</big></p> 1516</td> 1517<td width="53%"> 1518 1519<p><big>R/W</big></p> 1520</td> 1521<tr valign="top" align="left"> 1522<td width="8%"></td> 1523<td width="21%"></td> 1524<td width="8%"></td> 1525<td width="6%"></td> 1526<td width="53%"> 1527 1528<p><big>control bit order</big></p> 1529</td> 1530<tr valign="top" align="left"> 1531<td width="8%"></td> 1532<td width="21%"> 1533 1534<p><big>FreeByteCounts</big></p> 1535</td> 1536<td width="8%"></td> 1537<td width="6%"> 1538 1539<p><big>289</big></p> 1540</td> 1541<td width="53%"> 1542</td> 1543<tr valign="top" align="left"> 1544<td width="8%"></td> 1545<td width="21%"></td> 1546<td width="8%"></td> 1547<td width="6%"></td> 1548<td width="53%"> 1549 1550<p><big>parsed but ignored</big></p> 1551</td> 1552<tr valign="top" align="left"> 1553<td width="8%"></td> 1554<td width="21%"> 1555 1556<p><big>FreeOffsets</big></p> 1557</td> 1558<td width="8%"></td> 1559<td width="6%"> 1560 1561<p><big>288</big></p> 1562</td> 1563<td width="53%"> 1564</td> 1565<tr valign="top" align="left"> 1566<td width="8%"></td> 1567<td width="21%"></td> 1568<td width="8%"></td> 1569<td width="6%"></td> 1570<td width="53%"> 1571 1572<p><big>parsed but ignored</big></p> 1573</td> 1574<tr valign="top" align="left"> 1575<td width="8%"></td> 1576<td width="21%"> 1577 1578<p><big>GrayResponseCurve</big></p> 1579</td> 1580<td width="8%"></td> 1581<td width="6%"> 1582 1583<p><big>291</big></p> 1584</td> 1585<td width="53%"> 1586</td> 1587<tr valign="top" align="left"> 1588<td width="8%"></td> 1589<td width="21%"></td> 1590<td width="8%"></td> 1591<td width="6%"></td> 1592<td width="53%"> 1593 1594<p><big>parsed but ignored</big></p> 1595</td> 1596<tr valign="top" align="left"> 1597<td width="8%"></td> 1598<td width="21%"> 1599 1600<p><big>GrayResponseUnit</big></p> 1601</td> 1602<td width="8%"></td> 1603<td width="6%"> 1604 1605<p><big>290</big></p> 1606</td> 1607<td width="53%"> 1608</td> 1609<tr valign="top" align="left"> 1610<td width="8%"></td> 1611<td width="21%"></td> 1612<td width="8%"></td> 1613<td width="6%"></td> 1614<td width="53%"> 1615 1616<p><big>parsed but ignored</big></p> 1617</td> 1618<tr valign="top" align="left"> 1619<td width="8%"></td> 1620<td width="21%"> 1621 1622<p><big>Group3Options</big></p> 1623</td> 1624<td width="8%"></td> 1625<td width="6%"> 1626 1627<p><big>292</big></p> 1628</td> 1629<td width="53%"> 1630 1631<p><big>R/W</big></p> 1632</td> 1633<tr valign="top" align="left"> 1634<td width="8%"></td> 1635<td width="21%"></td> 1636<td width="8%"></td> 1637<td width="6%"></td> 1638<td width="53%"> 1639 1640<p><big>used by Group 3 codec</big></p> 1641</td> 1642<tr valign="top" align="left"> 1643<td width="8%"></td> 1644<td width="21%"> 1645 1646<p><big>Group4Options</big></p> 1647</td> 1648<td width="8%"></td> 1649<td width="6%"> 1650 1651<p><big>293</big></p> 1652</td> 1653<td width="53%"> 1654 1655<p><big>R/W</big></p> 1656</td> 1657<tr valign="top" align="left"> 1658<td width="8%"></td> 1659<td width="21%"> 1660 1661<p><big>HostComputer</big></p> 1662</td> 1663<td width="8%"></td> 1664<td width="6%"> 1665 1666<p><big>316</big></p> 1667</td> 1668<td width="53%"> 1669 1670<p><big>R/W</big></p> 1671</td> 1672<tr valign="top" align="left"> 1673<td width="8%"></td> 1674<td width="21%"> 1675 1676<p><big>ImageDepth</big></p> 1677</td> 1678<td width="8%"></td> 1679<td width="6%"> 1680 1681<p><big>32997</big></p> 1682</td> 1683<td width="53%"> 1684 1685<p><big>R/W</big></p> 1686</td> 1687<tr valign="top" align="left"> 1688<td width="8%"></td> 1689<td width="21%"></td> 1690<td width="8%"></td> 1691<td width="6%"></td> 1692<td width="53%"> 1693 1694<p><big>tile/strip calculations</big></p> 1695</td> 1696<tr valign="top" align="left"> 1697<td width="8%"></td> 1698<td width="21%"> 1699 1700<p><big>ImageDescription</big></p> 1701</td> 1702<td width="8%"></td> 1703<td width="6%"> 1704 1705<p><big>270</big></p> 1706</td> 1707<td width="53%"> 1708 1709<p><big>R/W</big></p> 1710</td> 1711<tr valign="top" align="left"> 1712<td width="8%"></td> 1713<td width="21%"> 1714 1715<p><big>ImageLength</big></p> 1716</td> 1717<td width="8%"></td> 1718<td width="6%"> 1719 1720<p><big>257</big></p> 1721</td> 1722<td width="53%"> 1723 1724<p><big>R/W</big></p> 1725</td> 1726<tr valign="top" align="left"> 1727<td width="8%"></td> 1728<td width="21%"></td> 1729<td width="8%"></td> 1730<td width="6%"></td> 1731<td width="53%"> 1732 1733<p><big>lots</big></p> 1734</td> 1735<tr valign="top" align="left"> 1736<td width="8%"></td> 1737<td width="21%"> 1738 1739<p><big>ImageWidth</big></p> 1740</td> 1741<td width="8%"></td> 1742<td width="6%"> 1743 1744<p><big>256</big></p> 1745</td> 1746<td width="53%"> 1747 1748<p><big>R/W</big></p> 1749</td> 1750<tr valign="top" align="left"> 1751<td width="8%"></td> 1752<td width="21%"></td> 1753<td width="8%"></td> 1754<td width="6%"></td> 1755<td width="53%"> 1756 1757<p><big>lots</big></p> 1758</td> 1759<tr valign="top" align="left"> 1760<td width="8%"></td> 1761<td width="21%"> 1762 1763<p><big>InkNames</big></p> 1764</td> 1765<td width="8%"></td> 1766<td width="6%"> 1767 1768<p><big>333</big></p> 1769</td> 1770<td width="53%"> 1771 1772<p><big>R/W</big></p> 1773</td> 1774<tr valign="top" align="left"> 1775<td width="8%"></td> 1776<td width="21%"> 1777 1778<p><big>InkSet</big></p> 1779</td> 1780<td width="8%"></td> 1781<td width="6%"> 1782 1783<p><big>332</big></p> 1784</td> 1785<td width="53%"> 1786 1787<p><big>R/W</big></p> 1788</td> 1789<tr valign="top" align="left"> 1790<td width="8%"></td> 1791<td width="21%"> 1792 1793<p><big>JPEGTables</big></p> 1794</td> 1795<td width="8%"></td> 1796<td width="6%"> 1797 1798<p><big>347</big></p> 1799</td> 1800<td width="53%"> 1801 1802<p><big>R/W</big></p> 1803</td> 1804<tr valign="top" align="left"> 1805<td width="8%"></td> 1806<td width="21%"></td> 1807<td width="8%"></td> 1808<td width="6%"></td> 1809<td width="53%"> 1810 1811<p><big>used by JPEG codec</big></p> 1812</td> 1813<tr valign="top" align="left"> 1814<td width="8%"></td> 1815<td width="21%"> 1816 1817<p><big>Make</big></p> 1818</td> 1819<td width="8%"></td> 1820<td width="6%"> 1821 1822<p><big>271</big></p> 1823</td> 1824<td width="53%"> 1825 1826<p><big>R/W</big></p> 1827</td> 1828<tr valign="top" align="left"> 1829<td width="8%"></td> 1830<td width="21%"> 1831 1832<p><big>Matteing</big></p> 1833</td> 1834<td width="8%"></td> 1835<td width="6%"> 1836 1837<p><big>32995</big></p> 1838</td> 1839<td width="53%"> 1840 1841<p><big>R</big></p> 1842</td> 1843<tr valign="top" align="left"> 1844<td width="8%"></td> 1845<td width="21%"></td> 1846<td width="8%"></td> 1847<td width="6%"></td> 1848<td width="53%"> 1849 1850<p><big>obsoleted by ExtraSamples tag</big></p> 1851</td> 1852<tr valign="top" align="left"> 1853<td width="8%"></td> 1854<td width="21%"> 1855 1856<p><big>MaxSampleValue</big></p> 1857</td> 1858<td width="8%"></td> 1859<td width="6%"> 1860 1861<p><big>281</big></p> 1862</td> 1863<td width="53%"> 1864 1865<p><big>R/W</big></p> 1866</td> 1867<tr valign="top" align="left"> 1868<td width="8%"></td> 1869<td width="21%"> 1870 1871<p><big>MinSampleValue</big></p> 1872</td> 1873<td width="8%"></td> 1874<td width="6%"> 1875 1876<p><big>280</big></p> 1877</td> 1878<td width="53%"> 1879 1880<p><big>R/W</big></p> 1881</td> 1882<tr valign="top" align="left"> 1883<td width="8%"></td> 1884<td width="21%"> 1885 1886<p><big>Model</big></p> 1887</td> 1888<td width="8%"></td> 1889<td width="6%"> 1890 1891<p><big>272</big></p> 1892</td> 1893<td width="53%"> 1894 1895<p><big>R/W</big></p> 1896</td> 1897<tr valign="top" align="left"> 1898<td width="8%"></td> 1899<td width="21%"> 1900 1901<p><big>NewSubFileType</big></p> 1902</td> 1903<td width="8%"></td> 1904<td width="6%"> 1905 1906<p><big>254</big></p> 1907</td> 1908<td width="53%"> 1909 1910<p><big>R/W</big></p> 1911</td> 1912<tr valign="top" align="left"> 1913<td width="8%"></td> 1914<td width="21%"></td> 1915<td width="8%"></td> 1916<td width="6%"></td> 1917<td width="53%"> 1918 1919<p><big>called SubFileType in spec</big></p> 1920</td> 1921<tr valign="top" align="left"> 1922<td width="8%"></td> 1923<td width="21%"> 1924 1925<p><big>NumberOfInks</big></p> 1926</td> 1927<td width="8%"></td> 1928<td width="6%"> 1929 1930<p><big>334</big></p> 1931</td> 1932<td width="53%"> 1933 1934<p><big>R/W</big></p> 1935</td> 1936<tr valign="top" align="left"> 1937<td width="8%"></td> 1938<td width="21%"> 1939 1940<p><big>Orientation</big></p> 1941</td> 1942<td width="8%"></td> 1943<td width="6%"> 1944 1945<p><big>274</big></p> 1946</td> 1947<td width="53%"> 1948 1949<p><big>R/W</big></p> 1950</td> 1951<tr valign="top" align="left"> 1952<td width="8%"></td> 1953<td width="21%"> 1954 1955<p><big>PageName</big></p> 1956</td> 1957<td width="8%"></td> 1958<td width="6%"> 1959 1960<p><big>285</big></p> 1961</td> 1962<td width="53%"> 1963 1964<p><big>R/W</big></p> 1965</td> 1966<tr valign="top" align="left"> 1967<td width="8%"></td> 1968<td width="21%"> 1969 1970<p><big>PageNumber</big></p> 1971</td> 1972<td width="8%"></td> 1973<td width="6%"> 1974 1975<p><big>297</big></p> 1976</td> 1977<td width="53%"> 1978 1979<p><big>R/W</big></p> 1980</td> 1981<tr valign="top" align="left"> 1982<td width="8%"></td> 1983<td width="21%"> 1984 1985<p><big>PhotometricInterpretation</big></p> 1986</td> 1987<td width="8%"></td> 1988<td width="6%"></td> 1989<td width="53%"> 1990 1991<p><big>262</big></p> 1992</td> 1993<tr valign="top" align="left"> 1994<td width="8%"></td> 1995<td width="21%"></td> 1996<td width="8%"></td> 1997<td width="6%"></td> 1998<td width="53%"> 1999 2000<p><big>R/Wused by Group 3 and JPEG codecs</big></p> 2001</td> 2002<tr valign="top" align="left"> 2003<td width="8%"></td> 2004<td width="21%"> 2005 2006<p><big>PlanarConfiguration</big></p> 2007</td> 2008<td width="8%"></td> 2009<td width="6%"> 2010 2011<p><big>284</big></p> 2012</td> 2013<td width="53%"> 2014 2015<p><big>R/W</big></p> 2016</td> 2017<tr valign="top" align="left"> 2018<td width="8%"></td> 2019<td width="21%"></td> 2020<td width="8%"></td> 2021<td width="6%"></td> 2022<td width="53%"> 2023 2024<p><big>data i/o</big></p> 2025</td> 2026<tr valign="top" align="left"> 2027<td width="8%"></td> 2028<td width="21%"> 2029 2030<p><big>Predictor</big></p> 2031</td> 2032<td width="8%"></td> 2033<td width="6%"> 2034 2035<p><big>317</big></p> 2036</td> 2037<td width="53%"> 2038 2039<p><big>R/W</big></p> 2040</td> 2041<tr valign="top" align="left"> 2042<td width="8%"></td> 2043<td width="21%"></td> 2044<td width="8%"></td> 2045<td width="6%"></td> 2046<td width="53%"> 2047 2048<p><big>used by LZW and Deflate codecs</big></p> 2049</td> 2050<tr valign="top" align="left"> 2051<td width="8%"></td> 2052<td width="21%"> 2053 2054<p><big>PrimaryChromacities</big></p> 2055</td> 2056<td width="8%"></td> 2057<td width="6%"> 2058 2059<p><big>319</big></p> 2060</td> 2061<td width="53%"> 2062 2063<p><big>R/W</big></p> 2064</td> 2065<tr valign="top" align="left"> 2066<td width="8%"></td> 2067<td width="21%"> 2068 2069<p><big>ReferenceBlackWhite</big></p> 2070</td> 2071<td width="8%"></td> 2072<td width="6%"> 2073 2074<p><big>532</big></p> 2075</td> 2076<td width="53%"> 2077 2078<p><big>R/W</big></p> 2079</td> 2080<tr valign="top" align="left"> 2081<td width="8%"></td> 2082<td width="21%"> 2083 2084<p><big>ResolutionUnit</big></p> 2085</td> 2086<td width="8%"></td> 2087<td width="6%"> 2088 2089<p><big>296</big></p> 2090</td> 2091<td width="53%"> 2092 2093<p><big>R/W</big></p> 2094</td> 2095<tr valign="top" align="left"> 2096<td width="8%"></td> 2097<td width="21%"></td> 2098<td width="8%"></td> 2099<td width="6%"></td> 2100<td width="53%"> 2101 2102<p><big>used by Group 3 codec</big></p> 2103</td> 2104<tr valign="top" align="left"> 2105<td width="8%"></td> 2106<td width="21%"> 2107 2108<p><big>RowsPerStrip</big></p> 2109</td> 2110<td width="8%"></td> 2111<td width="6%"> 2112 2113<p><big>278</big></p> 2114</td> 2115<td width="53%"> 2116 2117<p><big>R/W</big></p> 2118</td> 2119<tr valign="top" align="left"> 2120<td width="8%"></td> 2121<td width="21%"></td> 2122<td width="8%"></td> 2123<td width="6%"></td> 2124<td width="53%"> 2125 2126<p><big>data i/o</big></p> 2127</td> 2128<tr valign="top" align="left"> 2129<td width="8%"></td> 2130<td width="21%"> 2131 2132<p><big>SampleFormat</big></p> 2133</td> 2134<td width="8%"></td> 2135<td width="6%"> 2136 2137<p><big>339</big></p> 2138</td> 2139<td width="53%"> 2140 2141<p><big>R/W</big></p> 2142</td> 2143<tr valign="top" align="left"> 2144<td width="8%"></td> 2145<td width="21%"> 2146 2147<p><big>SamplesPerPixel</big></p> 2148</td> 2149<td width="8%"></td> 2150<td width="6%"> 2151 2152<p><big>277</big></p> 2153</td> 2154<td width="53%"> 2155 2156<p><big>R/W</big></p> 2157</td> 2158<tr valign="top" align="left"> 2159<td width="8%"></td> 2160<td width="21%"></td> 2161<td width="8%"></td> 2162<td width="6%"></td> 2163<td width="53%"> 2164 2165<p><big>lots</big></p> 2166</td> 2167<tr valign="top" align="left"> 2168<td width="8%"></td> 2169<td width="21%"> 2170 2171<p><big>SMinSampleValue</big></p> 2172</td> 2173<td width="8%"></td> 2174<td width="6%"> 2175 2176<p><big>340</big></p> 2177</td> 2178<td width="53%"> 2179 2180<p><big>R/W</big></p> 2181</td> 2182<tr valign="top" align="left"> 2183<td width="8%"></td> 2184<td width="21%"> 2185 2186<p><big>SMaxSampleValue</big></p> 2187</td> 2188<td width="8%"></td> 2189<td width="6%"> 2190 2191<p><big>341</big></p> 2192</td> 2193<td width="53%"> 2194 2195<p><big>R/W</big></p> 2196</td> 2197<tr valign="top" align="left"> 2198<td width="8%"></td> 2199<td width="21%"> 2200 2201<p><big>Software</big></p> 2202</td> 2203<td width="8%"></td> 2204<td width="6%"> 2205 2206<p><big>305</big></p> 2207</td> 2208<td width="53%"> 2209 2210<p><big>R/W</big></p> 2211</td> 2212<tr valign="top" align="left"> 2213<td width="8%"></td> 2214<td width="21%"> 2215 2216<p><big>StoNits</big></p> 2217</td> 2218<td width="8%"></td> 2219<td width="6%"> 2220 2221<p><big>37439</big></p> 2222</td> 2223<td width="53%"> 2224 2225<p><big>R/W</big></p> 2226</td> 2227<tr valign="top" align="left"> 2228<td width="8%"></td> 2229<td width="21%"> 2230 2231<p><big>StripByteCounts</big></p> 2232</td> 2233<td width="8%"></td> 2234<td width="6%"> 2235 2236<p><big>279</big></p> 2237</td> 2238<td width="53%"> 2239 2240<p><big>R/W</big></p> 2241</td> 2242<tr valign="top" align="left"> 2243<td width="8%"></td> 2244<td width="21%"></td> 2245<td width="8%"></td> 2246<td width="6%"></td> 2247<td width="53%"> 2248 2249<p><big>data i/o</big></p> 2250</td> 2251<tr valign="top" align="left"> 2252<td width="8%"></td> 2253<td width="21%"> 2254 2255<p><big>StripOffsets</big></p> 2256</td> 2257<td width="8%"></td> 2258<td width="6%"> 2259 2260<p><big>273</big></p> 2261</td> 2262<td width="53%"> 2263 2264<p><big>R/W</big></p> 2265</td> 2266<tr valign="top" align="left"> 2267<td width="8%"></td> 2268<td width="21%"></td> 2269<td width="8%"></td> 2270<td width="6%"></td> 2271<td width="53%"> 2272 2273<p><big>data i/o</big></p> 2274</td> 2275<tr valign="top" align="left"> 2276<td width="8%"></td> 2277<td width="21%"> 2278 2279<p><big>SubFileType</big></p> 2280</td> 2281<td width="8%"></td> 2282<td width="6%"> 2283 2284<p><big>255</big></p> 2285</td> 2286<td width="53%"> 2287 2288<p><big>R/W</big></p> 2289</td> 2290<tr valign="top" align="left"> 2291<td width="8%"></td> 2292<td width="21%"></td> 2293<td width="8%"></td> 2294<td width="6%"></td> 2295<td width="53%"> 2296 2297<p><big>called OSubFileType in spec</big></p> 2298</td> 2299<tr valign="top" align="left"> 2300<td width="8%"></td> 2301<td width="21%"> 2302 2303<p><big>TargetPrinter</big></p> 2304</td> 2305<td width="8%"></td> 2306<td width="6%"> 2307 2308<p><big>337</big></p> 2309</td> 2310<td width="53%"> 2311 2312<p><big>R/W</big></p> 2313</td> 2314<tr valign="top" align="left"> 2315<td width="8%"></td> 2316<td width="21%"> 2317 2318<p><big>Thresholding</big></p> 2319</td> 2320<td width="8%"></td> 2321<td width="6%"> 2322 2323<p><big>263</big></p> 2324</td> 2325<td width="53%"> 2326 2327<p><big>R/W</big></p> 2328</td> 2329<tr valign="top" align="left"> 2330<td width="8%"></td> 2331<td width="21%"></td> 2332<td width="8%"></td> 2333<td width="6%"></td> 2334<td width="53%"> 2335</td> 2336<tr valign="top" align="left"> 2337<td width="8%"></td> 2338<td width="21%"> 2339 2340<p><big>TileByteCounts</big></p> 2341</td> 2342<td width="8%"></td> 2343<td width="6%"> 2344 2345<p><big>324</big></p> 2346</td> 2347<td width="53%"> 2348 2349<p><big>R/W</big></p> 2350</td> 2351<tr valign="top" align="left"> 2352<td width="8%"></td> 2353<td width="21%"></td> 2354<td width="8%"></td> 2355<td width="6%"></td> 2356<td width="53%"> 2357 2358<p><big>data i/o</big></p> 2359</td> 2360<tr valign="top" align="left"> 2361<td width="8%"></td> 2362<td width="21%"> 2363 2364<p><big>TileDepth</big></p> 2365</td> 2366<td width="8%"></td> 2367<td width="6%"> 2368 2369<p><big>32998</big></p> 2370</td> 2371<td width="53%"> 2372 2373<p><big>R/W</big></p> 2374</td> 2375<tr valign="top" align="left"> 2376<td width="8%"></td> 2377<td width="21%"></td> 2378<td width="8%"></td> 2379<td width="6%"></td> 2380<td width="53%"> 2381 2382<p><big>tile/strip calculations</big></p> 2383</td> 2384<tr valign="top" align="left"> 2385<td width="8%"></td> 2386<td width="21%"> 2387 2388<p><big>TileLength</big></p> 2389</td> 2390<td width="8%"></td> 2391<td width="6%"> 2392 2393<p><big>323</big></p> 2394</td> 2395<td width="53%"> 2396 2397<p><big>R/W</big></p> 2398</td> 2399<tr valign="top" align="left"> 2400<td width="8%"></td> 2401<td width="21%"></td> 2402<td width="8%"></td> 2403<td width="6%"></td> 2404<td width="53%"> 2405 2406<p><big>data i/o</big></p> 2407</td> 2408<tr valign="top" align="left"> 2409<td width="8%"></td> 2410<td width="21%"> 2411 2412<p><big>TileOffsets</big></p> 2413</td> 2414<td width="8%"></td> 2415<td width="6%"> 2416 2417<p><big>324</big></p> 2418</td> 2419<td width="53%"> 2420 2421<p><big>R/W</big></p> 2422</td> 2423<tr valign="top" align="left"> 2424<td width="8%"></td> 2425<td width="21%"></td> 2426<td width="8%"></td> 2427<td width="6%"></td> 2428<td width="53%"> 2429 2430<p><big>data i/o</big></p> 2431</td> 2432<tr valign="top" align="left"> 2433<td width="8%"></td> 2434<td width="21%"> 2435 2436<p><big>TileWidth</big></p> 2437</td> 2438<td width="8%"></td> 2439<td width="6%"> 2440 2441<p><big>322</big></p> 2442</td> 2443<td width="53%"> 2444 2445<p><big>R/W</big></p> 2446</td> 2447<tr valign="top" align="left"> 2448<td width="8%"></td> 2449<td width="21%"></td> 2450<td width="8%"></td> 2451<td width="6%"></td> 2452<td width="53%"> 2453 2454<p><big>data i/o</big></p> 2455</td> 2456<tr valign="top" align="left"> 2457<td width="8%"></td> 2458<td width="21%"> 2459 2460<p><big>TransferFunction</big></p> 2461</td> 2462<td width="8%"></td> 2463<td width="6%"> 2464 2465<p><big>301</big></p> 2466</td> 2467<td width="53%"> 2468 2469<p><big>R/W</big></p> 2470</td> 2471<tr valign="top" align="left"> 2472<td width="8%"></td> 2473<td width="21%"> 2474 2475<p><big>WhitePoint</big></p> 2476</td> 2477<td width="8%"></td> 2478<td width="6%"> 2479 2480<p><big>318</big></p> 2481</td> 2482<td width="53%"> 2483 2484<p><big>R/W</big></p> 2485</td> 2486<tr valign="top" align="left"> 2487<td width="8%"></td> 2488<td width="21%"> 2489 2490<p><big>XPosition</big></p> 2491</td> 2492<td width="8%"></td> 2493<td width="6%"> 2494 2495<p><big>286</big></p> 2496</td> 2497<td width="53%"> 2498 2499<p><big>R/W</big></p> 2500</td> 2501<tr valign="top" align="left"> 2502<td width="8%"></td> 2503<td width="21%"> 2504 2505<p><big>XResolution</big></p> 2506</td> 2507<td width="8%"></td> 2508<td width="6%"> 2509 2510<p><big>282</big></p> 2511</td> 2512<td width="53%"> 2513 2514<p><big>R/W</big></p> 2515</td> 2516<tr valign="top" align="left"> 2517<td width="8%"></td> 2518<td width="21%"> 2519 2520<p><big>YCbCrCoefficients</big></p> 2521</td> 2522<td width="8%"></td> 2523<td width="6%"> 2524 2525<p><big>529</big></p> 2526</td> 2527<td width="53%"> 2528 2529<p><big>R/W</big></p> 2530</td> 2531<tr valign="top" align="left"> 2532<td width="8%"></td> 2533<td width="21%"></td> 2534<td width="8%"></td> 2535<td width="6%"></td> 2536<td width="53%"> 2537 2538<p><big>used by TIFFRGBAImage support</big></p> 2539</td> 2540<tr valign="top" align="left"> 2541<td width="8%"></td> 2542<td width="21%"> 2543 2544<p><big>YCbCrPositioning</big></p> 2545</td> 2546<td width="8%"></td> 2547<td width="6%"> 2548 2549<p><big>531</big></p> 2550</td> 2551<td width="53%"> 2552 2553<p><big>R/W</big></p> 2554</td> 2555<tr valign="top" align="left"> 2556<td width="8%"></td> 2557<td width="21%"></td> 2558<td width="8%"></td> 2559<td width="6%"></td> 2560<td width="53%"> 2561 2562<p><big>tile/strip size calulcations</big></p> 2563</td> 2564<tr valign="top" align="left"> 2565<td width="8%"></td> 2566<td width="21%"> 2567 2568<p><big>YCbCrSubsampling</big></p> 2569</td> 2570<td width="8%"></td> 2571<td width="6%"> 2572 2573<p><big>530</big></p> 2574</td> 2575<td width="53%"> 2576 2577<p><big>R/W</big></p> 2578</td> 2579<tr valign="top" align="left"> 2580<td width="8%"></td> 2581<td width="21%"> 2582 2583<p><big>YPosition</big></p> 2584</td> 2585<td width="8%"></td> 2586<td width="6%"> 2587 2588<p><big>286</big></p> 2589</td> 2590<td width="53%"> 2591 2592<p><big>R/W</big></p> 2593</td> 2594<tr valign="top" align="left"> 2595<td width="8%"></td> 2596<td width="21%"> 2597 2598<p><big>YResolution</big></p> 2599</td> 2600<td width="8%"></td> 2601<td width="6%"> 2602 2603<p><big>283</big></p> 2604</td> 2605<td width="53%"> 2606 2607<p><big>R/W</big></p> 2608</td> 2609<tr valign="top" align="left"> 2610<td width="8%"></td> 2611<td width="21%"></td> 2612<td width="8%"></td> 2613<td width="6%"></td> 2614<td width="53%"> 2615 2616<p><big>used by Group 3 codec</big></p> 2617</td> 2618</table> 2619<a name="PSEUDO TAGS"></a> 2620<h2>PSEUDO TAGS</h2> 2621<!-- INDENTATION --> 2622<table width="100%" border=0 rules="none" frame="void" 2623 cols="2" cellspacing="0" cellpadding="0"> 2624<tr valign="top" align="left"> 2625<td width="8%"></td> 2626<td width="91%"> 2627<p><big>In addition to the normal</big> TIFF <big>tags the 2628library supports a collection of tags whose values lie in a 2629range outside the valid range of</big> TIFF <big>tags. These 2630tags are termed <i>pseud-tags</i> and are used to control 2631various codec-specific functions within the library. The 2632table below summarizes the defined pseudo-tags.</big></p> 2633<!-- INDENTATION --> 2634<pre><big><i>Tag Name Codec R/W Library Use/Notes 2635</i></big></pre> 2636</td> 2637</table> 2638<!-- TABS --> 2639 2640<table width="100%" border=0 rules="none" frame="void" 2641 cols="5" cellspacing="0" cellpadding="0"> 2642<tr valign="top" align="left"> 2643<td width="8%"></td> 2644<td width="21%"> 2645 2646<p><big>TIFFTAG_FAXMODE</big></p> 2647</td> 2648<td width="8%"></td> 2649<td width="6%"> 2650 2651<p><big>G3</big></p> 2652</td> 2653<td width="53%"> 2654 2655<p><big>R/W</big></p> 2656</td> 2657<tr valign="top" align="left"> 2658<td width="8%"></td> 2659<td width="21%"></td> 2660<td width="8%"></td> 2661<td width="6%"></td> 2662<td width="53%"> 2663 2664<p><big>general codec operation</big></p> 2665</td> 2666<tr valign="top" align="left"> 2667<td width="8%"></td> 2668<td width="21%"> 2669 2670<p><big>TIFFTAG_FAXFILLFUNC</big></p> 2671</td> 2672<td width="8%"></td> 2673<td width="6%"> 2674 2675<p><big>G3/G4</big></p> 2676</td> 2677<td width="53%"> 2678 2679<p><big>R/W</big></p> 2680</td> 2681<tr valign="top" align="left"> 2682<td width="8%"></td> 2683<td width="21%"></td> 2684<td width="8%"></td> 2685<td width="6%"></td> 2686<td width="53%"> 2687 2688<p><big>bitmap fill function</big></p> 2689</td> 2690<tr valign="top" align="left"> 2691<td width="8%"></td> 2692<td width="21%"> 2693 2694<p><big>TIFFTAG_JPEGQUALITY</big></p> 2695</td> 2696<td width="8%"></td> 2697<td width="6%"> 2698 2699<p><big>JPEG</big></p> 2700</td> 2701<td width="53%"> 2702 2703<p><big>R/W</big></p> 2704</td> 2705<tr valign="top" align="left"> 2706<td width="8%"></td> 2707<td width="21%"></td> 2708<td width="8%"></td> 2709<td width="6%"></td> 2710<td width="53%"> 2711 2712<p><big>compression quality control</big></p> 2713</td> 2714<tr valign="top" align="left"> 2715<td width="8%"></td> 2716<td width="21%"> 2717 2718<p><big>TIFFTAG_JPEGCOLORMODE</big></p> 2719</td> 2720<td width="8%"></td> 2721<td width="6%"> 2722 2723<p><big>JPEG</big></p> 2724</td> 2725<td width="53%"> 2726 2727<p><big>R/W</big></p> 2728</td> 2729<tr valign="top" align="left"> 2730<td width="8%"></td> 2731<td width="21%"></td> 2732<td width="8%"></td> 2733<td width="6%"></td> 2734<td width="53%"> 2735 2736<p><big>control colorspace conversions</big></p> 2737</td> 2738<tr valign="top" align="left"> 2739<td width="8%"></td> 2740<td width="21%"> 2741 2742<p><big>TIFFTAG_JPEGTABLESMODE</big></p> 2743</td> 2744<td width="8%"></td> 2745<td width="6%"> 2746 2747<p><big>JPEG</big></p> 2748</td> 2749<td width="53%"> 2750 2751<p><big>R/W</big></p> 2752</td> 2753<tr valign="top" align="left"> 2754<td width="8%"></td> 2755<td width="21%"></td> 2756<td width="8%"></td> 2757<td width="6%"></td> 2758<td width="53%"> 2759 2760<p><big>control contents of <i>JPEGTables</i> tag</big></p> 2761</td> 2762<tr valign="top" align="left"> 2763<td width="8%"></td> 2764<td width="21%"> 2765 2766<p><big>TIFFTAG_ZIPQUALITY</big></p> 2767</td> 2768<td width="8%"></td> 2769<td width="6%"> 2770 2771<p><big>Deflate</big></p> 2772</td> 2773<td width="53%"> 2774 2775<p><big>R/Wcompression quality level</big></p> 2776</td> 2777<tr valign="top" align="left"> 2778<td width="8%"></td> 2779<td width="21%"> 2780 2781<p><big>TIFFTAG_PIXARLOGDATAFMT</big></p> 2782</td> 2783<td width="8%"></td> 2784<td width="6%"> 2785 2786<p><big>PixarLog</big></p> 2787</td> 2788<td width="53%"> 2789 2790<p><big>R/Wuser data format</big></p> 2791</td> 2792<tr valign="top" align="left"> 2793<td width="8%"></td> 2794<td width="21%"> 2795 2796<p><big>TIFFTAG_PIXARLOGQUALITY</big></p> 2797</td> 2798<td width="8%"></td> 2799<td width="6%"> 2800 2801<p><big>PixarLog</big></p> 2802</td> 2803<td width="53%"> 2804 2805<p><big>R/Wcompression quality level</big></p> 2806</td> 2807<tr valign="top" align="left"> 2808<td width="8%"></td> 2809<td width="21%"> 2810 2811<p><big>TIFFTAG_SGILOGDATAFMT</big></p> 2812</td> 2813<td width="8%"></td> 2814<td width="6%"> 2815 2816<p><big>SGILog</big></p> 2817</td> 2818<td width="53%"> 2819 2820<p><big>R/W</big></p> 2821</td> 2822<tr valign="top" align="left"> 2823<td width="8%"></td> 2824<td width="21%"></td> 2825<td width="8%"></td> 2826<td width="6%"></td> 2827<td width="53%"> 2828 2829<p><big>user data format</big></p> 2830</td> 2831</table> 2832<!-- INDENTATION --> 2833<table width="100%" border=0 rules="none" frame="void" 2834 cols="2" cellspacing="0" cellpadding="0"> 2835<tr valign="top" align="left"> 2836<td width="8%"></td> 2837<td width="91%"> 2838<p><big><b>TIFFTAG_FAXMODE</b></big></p></td> 2839</table> 2840<!-- INDENTATION --> 2841<table width="100%" border=0 rules="none" frame="void" 2842 cols="2" cellspacing="0" cellpadding="0"> 2843<tr valign="top" align="left"> 2844<td width="19%"></td> 2845<td width="80%"> 2846<p><big>Control the operation of the Group 3 codec. Possible 2847values (independent bits that can be combined by 2848or’ing them together) are: FAXMODE_CLASSIC (enable 2849old-style format in which the</big> RTC <big>is written at 2850the end of the last strip), FAXMODE_NORTC (opposite of 2851FAXMODE_CLASSIC; also called FAXMODE_CLASSF), FAXMODE_NOEOL 2852(do not write</big> EOL <big>codes at the start of each row 2853of data), FAXMODE_BYTEALIGN (align each encoded row to an 28548-bit boundary), FAXMODE_WORDALIGN (align each encoded row 2855to an 16-bit boundary), The default value is dependent on 2856the compression scheme; this pseudo-tag is used by the 2857various G3 and G4 codecs to share code.</big></p> 2858</td> 2859</table> 2860<!-- INDENTATION --> 2861<table width="100%" border=0 rules="none" frame="void" 2862 cols="2" cellspacing="0" cellpadding="0"> 2863<tr valign="top" align="left"> 2864<td width="8%"></td> 2865<td width="91%"> 2866<p><big><b>TIFFTAG_FAXFILLFUNC</b></big></p></td> 2867</table> 2868<!-- INDENTATION --> 2869<table width="100%" border=0 rules="none" frame="void" 2870 cols="2" cellspacing="0" cellpadding="0"> 2871<tr valign="top" align="left"> 2872<td width="19%"></td> 2873<td width="80%"> 2874<p><big>Control the function used to convert arrays of black 2875and white runs to packed bit arrays. This hook can be used 2876to image decoded scanlines in multi-bit depth rasters (e.g. 2877for display in colormap mode) or for other purposes. The 2878default value is a pointer to a builtin function that images 2879packed bilevel data.</big></p> 2880</td> 2881</table> 2882<!-- INDENTATION --> 2883<table width="100%" border=0 rules="none" frame="void" 2884 cols="2" cellspacing="0" cellpadding="0"> 2885<tr valign="top" align="left"> 2886<td width="8%"></td> 2887<td width="91%"> 2888<p><big><b>TIFFTAG_IPTCNEWSPHOTO</b></big></p></td> 2889</table> 2890<!-- INDENTATION --> 2891<table width="100%" border=0 rules="none" frame="void" 2892 cols="2" cellspacing="0" cellpadding="0"> 2893<tr valign="top" align="left"> 2894<td width="19%"></td> 2895<td width="80%"> 2896<p><big>Tag contaings image metadata per the IPTC newsphoto 2897spec: Headline, captioning, credit, etc... Used by most wire 2898services.</big></p> 2899</td> 2900</table> 2901<!-- INDENTATION --> 2902<table width="100%" border=0 rules="none" frame="void" 2903 cols="2" cellspacing="0" cellpadding="0"> 2904<tr valign="top" align="left"> 2905<td width="8%"></td> 2906<td width="91%"> 2907<p><big><b>TIFFTAG_PHOTOSHOP</b></big></p></td> 2908</table> 2909<!-- INDENTATION --> 2910<table width="100%" border=0 rules="none" frame="void" 2911 cols="2" cellspacing="0" cellpadding="0"> 2912<tr valign="top" align="left"> 2913<td width="19%"></td> 2914<td width="80%"> 2915<p><big>Tag contains Photoshop captioning information and 2916metadata. Photoshop uses in parallel and redundantly 2917alongside IPTCNEWSPHOTO information.</big></p> 2918</td> 2919</table> 2920<!-- INDENTATION --> 2921<table width="100%" border=0 rules="none" frame="void" 2922 cols="2" cellspacing="0" cellpadding="0"> 2923<tr valign="top" align="left"> 2924<td width="8%"></td> 2925<td width="91%"> 2926<p><big><b>TIFFTAG_JPEGQUALITY</b></big></p></td> 2927</table> 2928<!-- INDENTATION --> 2929<table width="100%" border=0 rules="none" frame="void" 2930 cols="2" cellspacing="0" cellpadding="0"> 2931<tr valign="top" align="left"> 2932<td width="19%"></td> 2933<td width="80%"> 2934<p><big>Control the compression quality level used in the 2935baseline algorithm. Note that quality levels are in the 2936range 0-100 with a default value of 75.</big></p> 2937</td> 2938</table> 2939<!-- INDENTATION --> 2940<table width="100%" border=0 rules="none" frame="void" 2941 cols="2" cellspacing="0" cellpadding="0"> 2942<tr valign="top" align="left"> 2943<td width="8%"></td> 2944<td width="91%"> 2945<p><big><b>TIFFTAG_JPEGCOLORMODE</b></big></p></td> 2946</table> 2947<!-- INDENTATION --> 2948<table width="100%" border=0 rules="none" frame="void" 2949 cols="2" cellspacing="0" cellpadding="0"> 2950<tr valign="top" align="left"> 2951<td width="19%"></td> 2952<td width="80%"> 2953<p><big>Control whether or not conversion is done between 2954RGB and YCbCr colorspaces. Possible values are: 2955JPEGCOLORMODE_RAW (do not convert), and JPEGCOLORMODE_RGB 2956(convert to/from RGB) The default value is 2957JPEGCOLORMODE_RAW.</big></p> 2958</td> 2959</table> 2960<!-- INDENTATION --> 2961<table width="100%" border=0 rules="none" frame="void" 2962 cols="2" cellspacing="0" cellpadding="0"> 2963<tr valign="top" align="left"> 2964<td width="8%"></td> 2965<td width="91%"> 2966<p><big><b>TIFFTAG_JPEGTABLESMODE</b></big></p></td> 2967</table> 2968<!-- INDENTATION --> 2969<table width="100%" border=0 rules="none" frame="void" 2970 cols="2" cellspacing="0" cellpadding="0"> 2971<tr valign="top" align="left"> 2972<td width="19%"></td> 2973<td width="80%"> 2974<p><big>Control the information written in the 2975<i>JPEGTables</i> tag. Possible values (independent bits 2976that can be combined by or’ing them together) are: 2977JPEGTABLESMODE_QUANT (include quantization tables), and 2978JPEGTABLESMODE_HUFF (include Huffman encoding tables). The 2979default value is 2980JPEGTABLESMODE_QUANT|JPEGTABLESMODE_HUFF.</big></p> 2981</td> 2982</table> 2983<!-- INDENTATION --> 2984<table width="100%" border=0 rules="none" frame="void" 2985 cols="2" cellspacing="0" cellpadding="0"> 2986<tr valign="top" align="left"> 2987<td width="8%"></td> 2988<td width="91%"> 2989<p><big><b>TIFFTAG_ZIPQUALITY</b></big></p></td> 2990</table> 2991<!-- INDENTATION --> 2992<table width="100%" border=0 rules="none" frame="void" 2993 cols="2" cellspacing="0" cellpadding="0"> 2994<tr valign="top" align="left"> 2995<td width="19%"></td> 2996<td width="80%"> 2997<p><big>Control the compression technique used by the 2998Deflate codec. Quality levels are in the range 1-9 with 2999larger numbers yielding better compression at the cost of 3000more computation. The default quality level is 6 which 3001yields a good time-space tradeoff.</big></p> 3002</td> 3003</table> 3004<!-- INDENTATION --> 3005<table width="100%" border=0 rules="none" frame="void" 3006 cols="2" cellspacing="0" cellpadding="0"> 3007<tr valign="top" align="left"> 3008<td width="8%"></td> 3009<td width="91%"> 3010<p><big><b>TIFFTAG_PIXARLOGDATAFMT</b></big></p></td> 3011</table> 3012<!-- INDENTATION --> 3013<table width="100%" border=0 rules="none" frame="void" 3014 cols="2" cellspacing="0" cellpadding="0"> 3015<tr valign="top" align="left"> 3016<td width="19%"></td> 3017<td width="80%"> 3018<p><big>Control the format of user data passed <i>in</i> to 3019the PixarLog codec when encoding and passed <i>out</i> from 3020when decoding. Possible values are: PIXARLOGDATAFMT_8BIT for 30218-bit unsigned pixels, PIXARLOGDATAFMT_8BITABGR for 8-bit 3022unsigned ABGR-ordered pixels, PIXARLOGDATAFMT_11BITLOG for 302311-bit log-encoded raw data, PIXARLOGDATAFMT_12BITPICIO for 302412-bit PICIO-compatible data, PIXARLOGDATAFMT_16BIT for 302516-bit signed samples, and PIXARLOGDATAFMT_FLOAT for 32-bit 3026IEEE floating point samples.</big></p> 3027</td> 3028</table> 3029<!-- INDENTATION --> 3030<table width="100%" border=0 rules="none" frame="void" 3031 cols="2" cellspacing="0" cellpadding="0"> 3032<tr valign="top" align="left"> 3033<td width="8%"></td> 3034<td width="91%"> 3035<p><big><b>TIFFTAG_PIXARLOGQUALITY</b></big></p></td> 3036</table> 3037<!-- INDENTATION --> 3038<table width="100%" border=0 rules="none" frame="void" 3039 cols="2" cellspacing="0" cellpadding="0"> 3040<tr valign="top" align="left"> 3041<td width="19%"></td> 3042<td width="80%"> 3043<p><big>Control the compression technique used by the 3044PixarLog codec. This value is treated identically to 3045TIFFTAG_ZIPQUALITY; see the above description.</big></p> 3046</td> 3047</table> 3048<!-- INDENTATION --> 3049<table width="100%" border=0 rules="none" frame="void" 3050 cols="2" cellspacing="0" cellpadding="0"> 3051<tr valign="top" align="left"> 3052<td width="8%"></td> 3053<td width="91%"> 3054<p><big><b>TIFFTAG_SGILOGDATAFMT</b></big></p></td> 3055</table> 3056<!-- INDENTATION --> 3057<table width="100%" border=0 rules="none" frame="void" 3058 cols="2" cellspacing="0" cellpadding="0"> 3059<tr valign="top" align="left"> 3060<td width="19%"></td> 3061<td width="80%"> 3062<p><big>Control the format of client data passed <i>in</i> 3063to the SGILog codec when encoding and passed <i>out</i> from 3064when decoding. Possible values are: SGILOGDATAFMT_FLTXYZ for 3065converting between LogLuv and 32-bit IEEE floating valued 3066XYZ pixels, SGILOGDATAFMT_16BITLUV for 16-bit encoded Luv 3067pixels, SGILOGDATAFMT_32BITRAW and SGILOGDATAFMT_24BITRAW 3068for no conversion of data, SGILOGDATAFMT_8BITRGB for 3069returning 8-bit RGB data (valid only when decoding 3070LogLuv-encoded data), SGILOGDATAFMT_FLTY for converting 3071between LogL and 32-bit IEEE floating valued Y pixels, 3072SGILOGDATAFMT_16BITL for 16-bit encoded L pixels, and 3073SGILOGDATAFMT_8BITGRY for returning 8-bit greyscale data 3074(valid only when decoding LogL-encoded data).</big></p> 3075</td> 3076</table> 3077<a name="DIAGNOSTICS"></a> 3078<h2>DIAGNOSTICS</h2> 3079<!-- INDENTATION --> 3080<table width="100%" border=0 rules="none" frame="void" 3081 cols="2" cellspacing="0" cellpadding="0"> 3082<tr valign="top" align="left"> 3083<td width="8%"></td> 3084<td width="91%"> 3085<p><big>All error messages are directed through the 3086<i>TIFFError</i> routine. By default messages are directed 3087to <b>stderr</b> in the form: <i>module: message\n.</i> 3088Warning messages are likewise directed through the 3089<i>TIFFWarning</i> routine.</big></p> 3090</td> 3091</table> 3092<a name="SEE ALSO"></a> 3093<h2>SEE ALSO</h2> 3094<!-- INDENTATION --> 3095<table width="100%" border=0 rules="none" frame="void" 3096 cols="2" cellspacing="0" cellpadding="0"> 3097<tr valign="top" align="left"> 3098<td width="8%"></td> 3099<td width="91%"> 3100<p><big><b>fax2tiff</b>(1), <b>gif2tiff</b>(1), 3101<b>pal2rgb</b>(1), <b>ppm2tiff</b>(1), <b>rgb2ycbcr</b>(1), 3102<b>ras2tiff</b>(1), <b>raw2tiff</b>(1), <b>sgi2tiff</b>(1), 3103<b>tiff2bw</b>(1), <b>tiffdither</b>(1), <b>tiffdump</b>(1), 3104<b>tiffcp</b>(1), <b>tiffcmp</b>(1), <b>tiffgt</b>(1), 3105<b>tiffinfo</b>(1), <b>tiffmedian</b>(1), 3106<b>tiffsplit</b>(1), <b>tiffsv</b>(1).</big></p> 3107<!-- INDENTATION --> 3108<p><big><b>Tag Image File Format Specification — 3109Revision 6.0</b>, an Aldus Technical Memorandum.</big></p> 3110<!-- INDENTATION --> 3111<p><big><b>The Spirit of TIFF Class F</b>, an appendix to 3112the TIFF 5.0 specification prepared by Cygnet 3113Technologies.</big></p> 3114<!-- INDENTATION --> 3115<p><big>Libtiff library home page: 3116<b>http://www.remotesensing.org/libtiff/</b></big></p> 3117</td> 3118</table> 3119<a name="BUGS"></a> 3120<h2>BUGS</h2> 3121<!-- INDENTATION --> 3122<table width="100%" border=0 rules="none" frame="void" 3123 cols="2" cellspacing="0" cellpadding="0"> 3124<tr valign="top" align="left"> 3125<td width="8%"></td> 3126<td width="91%"> 3127<p><big>The library does not support multi-sample images 3128where some samples have different bits/sample.</big></p> 3129<!-- INDENTATION --> 3130<p><big>The library does not support random access to 3131compressed data that is organized with more than one row per 3132tile or strip.</big></p> 3133</td> 3134</table> 3135<hr> 3136</body> 3137</html> 3138