晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。 林尽水源,便得一山,山有小口,仿佛若有光。便舍船,从口入。初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田、美池、桑竹之属。阡陌交通,鸡犬相闻。其中往来种作,男女衣着,悉如外人。黄发垂髫,并怡然自乐。 见渔人,乃大惊,问所从来。具答之。便要还家,设酒杀鸡作食。村中闻有此人,咸来问讯。自云先世避秦时乱,率妻子邑人来此绝境,不复出焉,遂与外人间隔。问今是何世,乃不知有汉,无论魏晋。此人一一为具言所闻,皆叹惋。余人各复延至其家,皆出酒食。停数日,辞去。此中人语云:“不足为外人道也。”(间隔 一作:隔绝) 既出,得其船,便扶向路,处处志之。及郡下,诣太守,说如此。太守即遣人随其往,寻向所志,遂迷,不复得路。 南阳刘子骥,高尚士也,闻之,欣然规往。未果,寻病终。后遂无问津者。
|
Server : Apache System : Linux srv.rainic.com 4.18.0-553.47.1.el8_10.x86_64 #1 SMP Wed Apr 2 05:45:37 EDT 2025 x86_64 User : rainic ( 1014) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /usr/share/doc/libtiff-devel/html/ |
Upload File : |
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<title>TIFF 6.0 Specification Coverage</title>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<meta http-equiv="content-language" content="en">
<style type="text/css">
<!--
th {text-align: left; vertical-align: top; font-style: italic; font-weight: normal}
-->
</style>
</head>
<body lang="en" text="#000000" bgcolor="#ffffff" link="#0000ff" alink="#0000ff" vlink="#0000ff">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td style="padding-left: 1em; padding-right: 1em"><img src="images/strike.gif" width="128" height="100" alt=""></td>
<td>
<h1>TIFF 6.0 Specification Coverage</h1>
<p>
The library is capable of dealing with images that are written to
follow the 5.0 or 6.0 TIFF spec. There is also considerable support
for some of the more esoteric portions of the 6.0 TIFF spec.
</p>
</td>
</tr>
</table>
<br>
<table border="1" cellspacing="0" cellpadding="5">
<tr>
<th>Core requirements</th>
<td>
<p>
Both <tt>"MM"</tt> and <tt>"II"</tt> byte orders are handled.
Both packed and separated planar configuration of samples.
Any number of samples per pixel (memory permitting).
Any image width and height (memory permitting).
Multiple subfiles can be read and written.
Editing is <b>not</b> supported in that related subfiles (e.g.
a reduced resolution version of an image) are not automatically
updated.
</p>
<p>
Tags handled: <tt>ExtraSamples</tt>, <tt>ImageWidth</tt>,
<tt>ImageLength</tt>, <tt>NewSubfileType</tt>, <tt>ResolutionUnit</tt>.
<tt>Rowsperstrip</tt>, <tt>StripOffsets</tt>, <tt>StripByteCounts</tt>,
<tt>XResolution</tt>, <tt>YResolution</tt>
</p>
</td>
</tr>
<tr>
<th>Tiled Images</th>
<td><tt>TileWidth</tt>, <tt>TileLength</tt>, <tt>TileOffsets</tt>,
<tt>TileByteCounts</tt></td>
</tr>
<tr>
<th>Image Colorimetry Information</th>
<td><tt>WhitePoint</tt>, <tt>PrimaryChromaticities</tt>, <tt>TransferFunction</tt>,
<tt>ReferenceBlackWhite</tt></td>
</tr>
<tr>
<th>Class B for bilevel images</th>
<td><tt>SamplesPerPixel</tt> = 1<br>
<tt>BitsPerSample</tt> = 1<br>
<tt>Compression</tt> = 1 (none), 2 (CCITT 1D), or 32773 (PackBits)<br>
<tt>PhotometricInterpretation</tt> = 0 (Min-is-White), 1 (Min-is-Black)</td>
</tr>
<tr>
<th>Class G for grayscale images</th>
<td><tt>SamplesPerPixel</tt> = 1<br>
<tt>BitsPerSample</tt> = 4, 8<br>
<tt>Compression</tt> = 1 (none) 5 (LZW)<br>
<tt>PhotometricInterpretation</tt> = 0 (Min-is-White), 1 (Min-is-Black)</td>
</tr>
<tr>
<th>Class P for palette color images</th>
<td><tt>SamplesPerPixel</tt> = 1<br>
<tt>BitsPerSample</tt> = 1-8<br>
<tt>Compression</tt> = 1 (none) 5 (LZW)<br>
<tt>PhotometricInterpretation</tt> = 3 (Palette RGB)<br>
<tt>ColorMap</tt></td>
</tr>
<tr>
<th>Class R for RGB full color images</th>
<td><tt>SamplesPerPixel</tt> = 3<br>
<tt>BitsPerSample</tt> = <8,8,8><br>
<tt>PlanarConfiguration</tt> = 1, 2<br>
<tt>Compression</tt> = 1 (none) 5 (LZW)<br>
<tt>PhotometricInterpretation</tt> = 2 (RGB)</td>
</tr>
<tr>
<th>Class F for facsimile</th>
<td>(<i>Class B tags plus...</i>)<br>
<tt>Compression</tt> = 3 (CCITT Group 3), 4 (CCITT Group 4)<br>
<tt>FillOrder</tt> = 1 (MSB), 2 (LSB)<br>
<tt>Group3Options</tt> = 1 (2d encoding), 4 (zero fill), 5 (2d+fill)<br>
<tt>ImageWidth</tt> = 1728, 2048, 2482<br>
<tt>NewSubFileType</tt> = 2<br>
<tt>ResolutionUnit</tt> = 2 (Inch), 3 (Centimeter)<br>
<tt>PageNumber</tt>,
<tt>XResolution</tt>,
<tt>YResolution</tt>,
<tt>Software</tt>,
<tt>BadFaxLines</tt>,
<tt>CleanFaxData</tt>,
<tt>ConsecutiveBadFaxLines</tt>,
<tt>DateTime</tt>,
<tt>DocumentName</tt>,
<tt>ImageDescription</tt>,
<tt>Orientation</tt></td>
</tr>
<tr>
<th>Class S for separated images</th>
<td><tt>SamplesPerPixel</tt> = 4<br>
<tt>PlanarConfiguration</tt> = 1, 2<br>
<tt>Compression</tt> = 1 (none), 5 (LZW)<br>
<tt>PhotometricInterpretation</tt> = 5 (Separated)<br>
<tt>InkSet</tt> = 1 (CMYK)<br>
<tt>DotRange</tt>,
<tt>InkNames</tt>,
<tt>DotRange</tt>,
<tt>TargetPrinter</tt></td>
</tr>
<tr>
<th>Class Y for YCbCr images</th>
<td><tt>SamplesPerPixel</tt> = 3<br>
<tt>BitsPerSample</tt> = <8,8,8><br>
<tt>PlanarConfiguration</tt> = 1, 2<br>
<tt>Compression</tt> = 1 (none), 5 (LZW), 7 (JPEG)<br>
<tt>PhotometricInterpretation</tt> = 6 (YCbCr)<br>
<tt>YCbCrCoefficients</tt>,
<tt>YCbCrSubsampling</tt>,
<tt>YCbCrPositioning</tt><br>
(<i>colorimetry info from Appendix H; see above</i>)</td>
</tr>
<tr>
<th>Class "JPEG" for JPEG images (per TTN2)</th>
<td><tt>PhotometricInterpretation</tt> = 1 (grayscale), 2 (RGB), 5 (CMYK), 6 (YCbCr)<br>
(<i>Class Y tags if YCbCr</i>)<br>
(<i>Class S tags if CMYK</i>)<br>
<tt>Compression</tt> = 7 (JPEG)</td>
</tr>
</table>
<p>
In addition, the library supports some optional compression algorithms
that are, in some cases, of dubious value.
</p>
<table border="0" cellspacing="0" cellpadding="2">
<tr><th>Compression tag value</th><th>Compression algorithm</th></tr>
<tr><td>32766</td><td>NeXT 2-bit encoding</td></tr>
<tr><td>32809</td><td>ThunderScan 4-bit encoding</td></tr>
<tr><td>32909</td><td>Pixar companded 11-bit ZIP encoding</td></tr>
<tr><td>32946</td><td>PKZIP-style Deflate encoding (experimental)</td></tr>
<tr><td>34676</td><td>SGI 32-bit Log Luminance encoding (experimental)</td></tr>
<tr><td>34677</td><td>SGI 24-bit Log Luminance encoding (experimental)</td></tr>
</table>
<br>
<p>
Note that there is no support for the JPEG-related tags defined
in the 6.0 specification; the JPEG support is based on the post-6.0
proposal given in TIFF Technical Note #2.
</p>
<table>
<tr>
<td valign=top><img src="images/info.gif" width="32" height="32" alt=""></td>
<td>For more information on the experimental Log Luminance encoding
consult the materials available at
<a href="http://www.anyhere.com/gward/pixformat/tiffluv.html">http://www.anyhere.com/gward/pixformat/tiffluv.html</a>.</td>
</tr>
</table>
<br>
<p>
The following table shows the tags that are recognized
and how they are used by the library. If no use is indicated,
then the library reads and writes the tag, but does not use it internally.
</p>
<table border="1" cellspacing="0" cellpadding="5">
<tr>
<th>Tag Name</th>
<th>Value</th>
<th>R/W</th>
<th>Library's Use (Comments)</th>
</tr>
<tr>
<td><tt>NewSubFileType</tt></td>
<td>254</td>
<td>R/W</td>
<td>none (called <tt>SubFileType</tt> in <tiff.h>)</td>
</tr>
<tr>
<td><tt>SubFileType</tt></td>
<td>255</td>
<td>R/W</td>
<td>none (called <tt>OSubFileType</tt> in <tiff.h>)</td>
</tr>
<tr>
<td><tt>ImageWidth</tt></td>
<td>256</td>
<td>R/W</td>
<td>lots</td>
</tr>
<tr>
<td><tt>ImageLength</tt></td>
<td>257</td>
<td>R/W</td>
<td>lots</td>
</tr>
<tr>
<td><tt>BitsPerSample</tt></td>
<td>258</td>
<td>R/W</td>
<td>lots</td>
</tr>
<tr>
<td><tt>Compression</tt></td>
<td>259</td>
<td>R/W</td>
<td>to select appropriate codec</td>
</tr>
<tr>
<td><tt>PhotometricInterpretation</tt></td>
<td>262</td>
<td>R/W</td>
<td>lots</td>
</tr>
<tr>
<td><tt>Thresholding</tt></td>
<td>263</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>CellWidth</tt></td>
<td>264</td>
<td> </td>
<td>parsed but ignored</td>
</tr>
<tr>
<td><tt>CellLength</tt></td>
<td>265</td>
<td> </td>
<td>parsed but ignored</td>
</tr>
<tr>
<td><tt>FillOrder</tt></td>
<td>266</td>
<td>R/W</td>
<td>control bit order</td>
</tr>
<tr>
<td><tt>DocumentName</tt></td>
<td>269</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>ImageDescription</tt></td>
<td>270</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>Make</tt></td>
<td>271</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>Model</tt></td>
<td>272</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>StripOffsets</tt></td>
<td>273</td>
<td>R/W</td>
<td>data i/o</td>
</tr>
<tr>
<td><tt>Orientation</tt></td>
<td>274</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>SamplesPerPixel</tt></td>
<td>277</td>
<td>R/W</td>
<td>lots</td>
</tr>
<tr>
<td><tt>RowsPerStrip</tt></td>
<td>278</td>
<td>R/W</td>
<td>data i/o</td>
</tr>
<tr>
<td><tt>StripByteCounts</tt></td>
<td>279</td>
<td>R/W</td>
<td>data i/o</td>
</tr>
<tr>
<td><tt>MinSampleValue</tt></td>
<td>280</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>MaxSampleValue</tt></td>
<td>281</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>XResolution</tt></td>
<td>282</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>YResolution</tt></td>
<td>283</td>
<td>R/W</td>
<td>used by Group 3 2d encoder</td>
</tr>
<tr>
<td><tt>PlanarConfiguration</tt></td>
<td>284</td>
<td>R/W</td>
<td>data i/o</td>
</tr>
<tr>
<td><tt>PageName</tt></td>
<td>285</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>XPosition</tt></td>
<td>286</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>YPosition</tt></td>
<td>286</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>FreeOffsets</tt></td>
<td>288</td>
<td> </td>
<td>parsed but ignored</td>
</tr>
<tr>
<td><tt>FreeByteCounts</tt></td>
<td>289</td>
<td> </td>
<td>parsed but ignored</td>
</tr>
<tr>
<td><tt>GrayResponseUnit</tt></td>
<td>290</td>
<td> </td>
<td>parsed but ignored</td>
</tr>
<tr>
<td><tt>GrayResponseCurve</tt></td>
<td>291</td>
<td> </td>
<td>parsed but ignored</td>
</tr>
<tr>
<td><tt>Group3Options</tt></td>
<td>292</td>
<td>R/W</td>
<td>used by Group 3 codec</td>
</tr>
<tr>
<td><tt>Group4Options</tt></td>
<td>293</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>ResolutionUnit</tt></td>
<td>296</td>
<td>R/W</td>
<td>used by Group 3 2d encoder</td>
</tr>
<tr>
<td><tt>PageNumber</tt></td>
<td>297</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>ColorResponseUnit</tt></td>
<td>300</td>
<td> </td>
<td>parsed but ignored</td>
</tr>
<tr>
<td><tt>TransferFunction</tt></td>
<td>301</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>Software</tt></td>
<td>305</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>DateTime</tt></td>
<td>306</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>Artist</tt></td>
<td>315</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>HostComputer</tt></td>
<td>316</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>Predictor</tt></td>
<td>317</td>
<td>R/W</td>
<td>used by LZW codec</td>
</tr>
<tr>
<td><tt>WhitePoint</tt></td>
<td>318</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>PrimaryChromacities</tt></td>
<td>319</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>ColorMap</tt></td>
<td>320</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>TileWidth</tt></td>
<td>322</td>
<td>R/W</td>
<td>data i/o</td>
</tr>
<tr>
<td><tt>TileLength</tt></td>
<td>323</td>
<td>R/W</td>
<td>data i/o</td>
</tr>
<tr>
<td><tt>TileOffsets</tt></td>
<td>324</td>
<td>R/W</td>
<td>data i/o</td>
</tr>
<tr>
<td><tt>TileByteCounts</tt></td>
<td>324</td>
<td>R/W</td>
<td>data i/o</td>
</tr>
<tr>
<td><tt>BadFaxLines</tt></td>
<td>326</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>CleanFaxData</tt></td>
<td>327</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>ConsecutiveBadFaxLines</tt></td>
<td>328</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>SubIFD</tt></td>
<td>330</td>
<td>R/W</td>
<td>subimage descriptor support</td>
</tr>
<tr>
<td><tt>InkSet</tt></td>
<td>332</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>InkNames</tt></td>
<td>333</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>DotRange</tt></td>
<td>336</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>TargetPrinter</tt></td>
<td>337</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>ExtraSamples</tt></td>
<td>338</td>
<td>R/W</td>
<td>lots</td>
</tr>
<tr>
<td><tt>SampleFormat</tt></td>
<td>339</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>SMinSampleValue</tt></td>
<td>340</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>SMaxSampleValue</tt></td>
<td>341</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>JPEGTables</tt></td>
<td>347</td>
<td>R/W</td>
<td>used by JPEG codec</td>
</tr>
<tr>
<td><tt>YCbCrCoefficients</tt></td>
<td>529</td>
<td>R/W</td>
<td>used by <tt>TIFFReadRGBAImage</tt> support</td>
</tr>
<tr>
<td><tt>YCbCrSubsampling</tt></td>
<td>530</td>
<td>R/W</td>
<td>tile/strip size calculations</td>
</tr>
<tr>
<td><tt>YCbCrPositioning</tt></td>
<td>531</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>ReferenceBlackWhite</tt></td>
<td>532</td>
<td>R/W</td>
<td> </td>
</tr>
<tr>
<td><tt>Matteing</tt></td>
<td>32995</td>
<td>R</td>
<td>none (obsoleted by <tt>ExtraSamples</tt> tag)</td>
</tr>
<tr>
<td><tt>DataType</tt></td>
<td>32996</td>
<td>R</td>
<td>none (obsoleted by <tt>SampleFormat</tt> tag)</td>
</tr>
<tr>
<td><tt>ImageDepth</tt></td>
<td>32997</td>
<td>R/W</td>
<td>tile/strip calculations</td>
</tr>
<tr>
<td><tt>TileDepth</tt></td>
<td>32998</td>
<td>R/W</td>
<td>tile/strip calculations</td>
</tr>
<tr>
<td><tt>StoNits</tt></td>
<td>37439</td>
<td>R/W</td>
<td> </td>
</tr>
</table>
<p>
The <tt>Matteing</tt> and <tt>DataType</tt>
tags have been obsoleted by the 6.0
<tt>ExtraSamples</tt> and <tt>SampleFormat</tt> tags.
Consult the documentation on the
<tt>ExtraSamples</tt> tag and Associated Alpha for elaboration. Note however
that if you use Associated Alpha, you are expected to save data that is
pre-multipled by Alpha. If this means nothing to you, check out
Porter & Duff's paper in the '84 SIGGRAPH proceedings: "Compositing Digital
Images".
</p>
<p>
The <tt>ImageDepth</tt>
tag is a non-standard, but registered tag that specifies
the Z-dimension of volumetric data. The combination of <tt>ImageWidth</tt>,
<tt>ImageLength</tt>, and <tt>ImageDepth</tt>,
defines a 3D volume of pixels that are
further specified by <tt>BitsPerSample</tt> and
<tt>SamplesPerPixel</tt>. The <tt>TileDepth</tt>
tag (also non-standard, but registered) can be used to specified a
subvolume "tiling" of a volume of data.
</p>
<p>
The Colorimetry, and CMYK tags are additions that appear in TIFF 6.0.
Consult the TIFF 6.0 specification included in the <b>doc</b> directory
and <a href="document.html">online</a>.
</p>
<p>
The JPEG-related tag is specified in
<a href="TIFFTechNote2.html">TIFF Technical Note #2</a> which defines
a revised JPEG-in-TIFF scheme (revised over that appendix that was
part of the TIFF 6.0 specification).
</p>
<hr>
<p>
Last updated: $Date: 2016-09-25 20:05:45 $
</p>
</body>
</html>