home *** CD-ROM | disk | FTP | other *** search
-
-
-
-
-
-
- An Aldus/Microsoft Technical Memorandum: 8/8/88 Page 1
- An Aldus/Microsoft Technical Memorandum: 8/8/88 Page 1
-
-
-
- Preface
-
-
- This memorandum has been prepared jointly by Aldus and Microsoft
- in conjunction with leading scanner vendors and other interested
- parties. This document does not represent a commitment on the
- part of either Microsoft or Aldus to provide support for this
- file format in any application. When responding to specific
- issues raised in this memo, or when requesting additional tag or
- field assignments, please address your correspondence to either:
-
- Developers_ Desk Windows Marketing Group
- Aldus Corporation Microsoft Corporation
- 411 First Ave. South 16011 NE 36th Way
- Suite 200 Box 97017
- Seattle, WA 98104 Redmond, WA 98073-9717
- (206) 622-5500 (206) 882-8080
-
-
-
- Revision Notes
-
- This revision replaces _TIFF Revision 4._ Sections in italics
- are new or substantially changed in this revision. Also new, but
- not in italics, are Appendices F, G, and H.
-
- The major enhancements in TIFF 5.0 are:
-
- 1. Compression of grayscale and color images, for better disk
- space utilization. See Appendix F.
-
- 2. TIFF Classes_restricted TIFF subsets that can simplify the
- job of the TIFF implementor. You may wish to scan Appendix G
- before reading the rest of this document. In fact, you may want
- to use Appendix G as your main guide, and refer back to the main
- body of the specification as needed for details concerning TIFF
- structures and field definitions.
-
- 3. Support for _palette color_ images. See the TIFF Class P
- description in Appendix G, and the new ColorMap field
- description.
-
- 4. Two new tags that can be used to more fully define the
- characteristics of full color RGB data, and thereby potentially
- improve the quality of color image reproduction. See Appendix H.
-
- The organization of the document has also changed slightly. In
- particular, the tags are listed in alphabetical order, within
- several categories, in the main body of the specification.
-
-
-
-
-
-
-
-
-
-
- TIFF 5.0 page 2
- TIFF 5.0 page 2
-
-
- As always, every attempt has been made to add functionality in
- such a way as to minimize incompatibility problems with older
- TIFF software. In particular, many TIFF 5.0 files will be
- readable even by older applications that assume TIFF 4.0 or an
- earlier version of the specification. One exception is with
- files that use the new TIFF 5.0 LZW compression scheme. Old
- applications will have to give up in this case, of course, and
- will do so _gracefully_ if they have been following the rules.
-
- We are grateful to all of the draft reviewers for their
- suggestions. Especially helpful were Herb Weiner of Kitchen
- Wisdom Publishing Company, Brad Pillow of TrueVision, and
- engineers from Hewlett Packard and Quark. Chris Sears of Magenta
- Graphics provided information which is included as Appendix H.
-
-
- Abstract
-
- This document describes TIFF, a tag based file format that is
- designed to promote the interchange of digital image data.
-
- The fields were defined primarily with desktop publishing and
- related applications in mind, although it is possible that other
- sorts of imaging applications may find TIFF to be useful.
-
- The general scenario for which TIFF was invented assumes that
- applications software for scanning or painting creates a TIFF
- file, which can then be read and incorporated into a _document_
- or _publication_ by an application such as a desktop publishing
- package.
-
- TIFF is not a printer language or page description language, nor
- is it intended to be a general document interchange standard. The
- primary design goal was to provide a rich environment within
- which the exchange of image data between application programs can
- be accomplished. This richness is required in order to take
- advantage of the varying capabilities of scanners and similar
- devices. TIFF is therefore designed to be a superset of existing
- image file formats for _desktop_ scanners (and paint programs
- and anything else that produces images with pixels in them) and
- will be enhanced on a continuing basis as new capabilities arise.
- A high priority has been given to structuring the data in such a
- way as to minimize the pain of future additions. TIFF was
- designed to be an extensible interchange format.
-
- Although TIFF is claimed to be in some sense a rich format, it
- can easily be used for simple scanners and applications as well,
- since the application developer need only be concerned with the
- capabilities that he requires.
-
- TIFF is intended to be independent of specific operating systems,
- filing systems, compilers, and processors. The only significant
- assumption is that the storage medium supports something like a
- _file,_ defined as a sequence of 8-bit bytes, where the bytes
-
-
-
-
-
-
-
-
-
- TIFF 5.0 page 3
- TIFF 5.0 page 3
-
-
- are numbered from 0 to N. The largest possible TIFF file is
- 2**32 bytes in length. Since TIFF uses pointers (byte offsets)
- quite liberally, a TIFF file is most easily read from a random
- access device such as a hard disk or flexible diskette, although
- it should be possible to read and write TIFF files on magnetic
- tape.
-
- The recommended MS-DOS, UNIX, and OS/2 file extension for TIFF
- files is _.TIF._ The recommended Macintosh filetype is _TIFF_.
- Suggestions for conventions in other computing environments are
- welcome.
-
-
- 1) Structure
-
- In TIFF, individual fields are identified with a unique tag. This
- allows particular fields to be present or absent from the file as
- required by the application. For an explanation of the rationale
- behind using a tag structure format, see Appendix A.
-
- A TIFF file begins with an 8-byte _image file header_ that points
- to one or more _image file directories._ The image file
- directories contain information about the images, as well as
- pointers to the actual image data.
-
- See Figure 1.
-
- We will now describe these structures in more detail.
-
- Image file header
-
- A TIFF file begins with an 8-byte image file header, containing
- the following information:
-
- Bytes 0-1: The first word of the file specifies the byte
- order used within the file. Legal values are:
-
- _II_ (hex 4949)
- _MM_ (hex 4D4D)
-
- In the _II_ format, byte order is always from least
- significant to most significant, for both 16-bit and 32-bit
- integers. In the _MM_ format, byte order is always from most
- significant to least significant, for both 16-bit and 32-bit
- integers. In both formats, character strings are stored into
- sequential byte locations.
-
- All TIFF readers should support both byte orders_see
- Appendix G.
-
- Bytes 2-3 The second word of the file is the TIFF _version
- number._ This number, 42 (2A in hex), is not to be equated with
- the current Revision of the TIFF specification. In fact, the
- TIFF version number (42) has never changed, and probably never
-
-
-
-
-
-
-
-
-