view Side-By-Side changes
File Format for Internet Fax
<draft-ietf-fax-tiffplus-00.txt>
<DRAFT-IETF-FAX-TIFFPLUS-01.TXT>
Status
This document is an Internet Draft. Internet Drafts are working
documents of the Internet Engineering Task Force (IETF), its Areas, and
its Working Groups. Note that other groups may also distribute working
documents as Internet Drafts.
Internet Drafts are valid for a maximum of six months and may be
updated, replaced, or obsoleted by other documents at any time. It is
inappropriate to use Internet Drafts as reference material or to cite
them other than as a "work in progress."
To learn the current status of any Internet-Draft, please check the
"1id-abstracts.txt" listing contained in the Internet-Drafts Shadow
Directories on ftp.is.co.za (Africa), nic.nordu.net (Europe),
munnari.oz.au (Pacific Rim), ds.internic.net (US East Coast), or
ftp.isi.edu (US West Coast).
Abstract
This Internet Draft describes the TIFF representation of the image data
specified by the ITU-T Recommendations for black-and-white and proposals color
facsimile. The document provides a standard definition for TIFF-F (also
known as TIFF Class F), which is used for a subset of black-and-white
facsimile, and standard definitions for the TIFF representation of the
ITU-T Recommendations for facsimile, including color facsimile. For the
most part, existing TIFF constructs and fields are used; new TIFF fields
are introduced only when as necessary. Black-and-white facsimile is
already described by TIFF Class F, and this Draft builds on that
to add color fax capability and to establish a structure for
future enhancements. The document also describes the refinement
of the registration of the MIME type image/tiff.
Table of Contents
1. INTRODUCTION..................................................3 INTRODUCTION........................................................3
1.1. Scope....................................................3 Scope..........................................................3
1.2. Rationale................................................3 Approach.......................................................4
1.3. Organization of This Draft...............................4 this draft.....................................4
2. TIFF and Fax..................................................4 Fax........................................................4
2.1. TIFF Overview............................................4 Overview..................................................4
2.1.1. File Structure.......................................4 Structure.............................................5
2.1.2. Image Structure......................................5 Structure............................................6
2.1.3. Recommended TIFF File Structure for Fax Applications.......6
2.2 TIFF Fields for Fax Requirements..........................................6 Applications................................7
2.2.1. TIFF fields Fields required for all fax modes...............6 modes.....................8
2.2.2. Additional TIFF fields recommended Fields required for all fax modes............7 modes..........9
2.2.3. New TIFF fields Fields recommended for all fax modes....................7 modes..................9
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 1]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
2.2.4. New TIFF Fields recommended for fax modes......................10
3. Base B&W Fax Mode.............................................9 Minimal Black-and-white Mode.......................................11
3.1. Overview.................................................9 Overview......................................................12
3.2. Required TIFF Fields.....................................9
3.2.1. Fields..........................................12
3.2.1 Baseline fields.....................................10
3.2.2. Fields............................................12
3.2.2 Extension fields....................................10
3.2.3. Fields...........................................13
3.2.3 New fields..........................................11 Fields.................................................14
3.3. Recommended TIFF Fields.................................11
3.3.1. Baseline fields.....................................11
3.3.2. Extension fields....................................11
3.3.3. New fields..........................................11 Fields.......................................14
3.4. Base B&W Fax End of Line Restrictions......................................14
3.5. Minimal Black-and-White Mode Summary...............................12 Summary..........................15
4. Base Color Fax Mode..........................................14 Extended Black-and-White mode......................................16
4.1. Overview................................................14 Overview......................................................16
4.2. Required TIFF Fields....................................14 Fields..........................................17
4.2.1. Baseline Fields.....................................15 Fields...........................................17
4.2.2. Extension fields....................................16 Fields..........................................18
4.2.3. New fields..........................................18 Fields................................................19
4.3. Recommended TIFF Fields.................................18 Fields.......................................19
4.3.1. Baseline Fields...........................................19
4.3.2. Extension Fields..........................................19
4.3.3. New Fields................................................19
4.4. Base Color TIFF Class F Definition.......................................19
4.5. Extended Black-and-White Fax Mode Summary.............................18 Summary.....................19
5. Lossless Base Color Mode..........................................20 Fax Mode................................................22
5.1. Overview................................................20
5.1.1. Color Encoding......................................21
5.1.2. JBIG Encoding.......................................21 Overview......................................................22
5.2. Required TIFF Fields....................................21 Fields..........................................22
5.2.1. Baseline fields.....................................22 Fields...........................................22
5.2.2. Extension fields....................................23 Fields..........................................23
5.2.3. New fields..........................................23 Fields................................................24
5.3. Recommended TIFF Fields.................................23 Fields.......................................24
5.4. Lossless Base Color Fax Mode Summary.........................24 Summary...................................25
6. Lossless Color Mode................................................27
6.1. Overview......................................................27
6.1.1. Color Encoding............................................27
6.1.2. JBIG Encoding.............................................28
6.2. Required TIFF Fields..........................................28
6.2.1. Baseline Fields...........................................28
6.2.2. Extension Fields..........................................29
6.2.3. New Fields................................................29
6.3. Recommended TIFF Fields.......................................29
6.4. Lossless Color Fax Mode Summary...............................29
7. Mixed Raster Content Mode....................................26
6.1 Overview.................................................26
6.1.1. Mode..........................................31
7.1 Overview.......................................................31
7.1.1. MRC 3-layer model...................................26
6.1.2. model.........................................32
7.1.2. A TIFF Representation for the MRC 3-layer model.....27
6.2. model...........33
7.2. Required TIFF Fields....................................29
6.2.1. Fields..........................................34
7.2.1. Baseline fields.....................................29
6.2.2. Fields...........................................34
7.2.2. Extension fields....................................30
6.2.3. Fields..........................................35
7.2.3. New fields..........................................31
6.3. Fields................................................36
7.3. Recommended TIFF Fields.................................32
6.4. Fields.......................................37
7.4. Rules and Requirements for Images.......................32
6.5. Images.............................37
7.5. MRC Fax Mode Summary....................................33
7. Mime Sub-Type................................................36
8. IANA Registration............................................36
9. Security Considerations......................................37
10. References..................................................38
11. Authors' Addresses..........................................39
Annex A: Summary of TIFF Fields for Internet Fax ...............39 Summary..........................................38
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 2]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
8. Mime Sub-Type......................................................41
9. IANA Registration..................................................41
10. Security Considerations...........................................42
11. References........................................................42
12. Authors' Addresses................................................44
Appendix A: Summary of TIFF Fields for Internet Fax ..................44
Appendix B: Use of TIFF-F for Black-and-White Fax.....................49
1. Introduction
1.1 Scope
This document defines a TIFF-based file format specification and
corresponding IETF MIME image/tiff content type consistent with the charter
of the IETF Internet Fax Working Group for enabling standardized
messaging-based fax over the Internet. In particular, it describes the
fields and parameters required to enable TIFF (Tag Image File Format) to
represent the data content and the structure of the data generated by the suite of existing and developing
ITU-T Recommendations for Group 3 facsimile. These standards, and the
TIFF fields described here, support four five facsimile modes:
1. base minimal black-and-white mode, using binary compression [T.4,
T.6, T.82] [T.4]
2. extended black-and-white mode, using binary compression [T.6, T.82]
3. lossy color and grayscale mode, using JPEG compression [T.42, T.81]
3.
4. lossless color and grayscale mode, using JBIG compression [T.43,
T.82]
4.
5. mixed raster content mode [MRC], using a combination of
existing compression
methods in 1-4
This specification builds on defines a previously proposed standard
[RFC1314] and on work in progress [TIFF-F] minimal interchange set of fields that will
guarantee that, at least, binary black-and-white images will be
supported. Implementations are required to support this minimal
interchange set of fields.
This specification builds on a previously proposed standard [RFC1314]
and on work in progress [TIFF-F] for the base black-and-
white mode. black-and-white fax to provide a
standard definition of TIFF Class F. It extends that work to make it
compatible with the relevant ITU-T Recommendations for color and
grayscale facsimile. It also proposes a modification to the image/tiff
content type that would accommodate the fax modes.
Within its defined scope of specifying a file format for Internet Fax,
this draft:
1. specifies TIFF structures for facsimile data,
2. defines ITU fax-compatible values for existing TIFF fields,
3. defines new TIFF fields and values required for
compatibility with ITU fax. ITU-T compatibility.
McIntyre & Zilles Expires 1/30/98 [Page 3]
Internet Draft File Format for Internet Fax July 30, 1997
1.2 Rationale Approach
This specification uses the current TIFF spec [TIFF] as the basis for
describing color and grayscale facsimile modes. By doing so,
it It takes advantage of
TIFF features and structures that bridge the data formats and
performance requirements of both legacy fax machines and host-based fax
applications. A TIFF-based approach also builds on an established base
of users and implementors and ensures backward compatibility with
existing TIFF-based IETF proposals and work in progress for Internet
fax.
McIntyre & Zilles Expires 9/20/97 [Page 3]
Internet Draft File Format for Internet Fax March 20, 1997
The basic approach to using TIFF for facsimile data is to insert the fax
data stream in a TIFF file and to use TIFF fields to encode the
parameters that describe the properties of the data. TIFF constructs for
pages, images, and strips allow a TIFF file to preserve the fax data
stream structure, and the performance advantages that come with it.
1.3 Organization of this draft
Section 2 describes the general representation of fax data and
parameters in a TIFF file, including the TIFF fields that
would be used in all four
fax modes. Sections 3-6 each describe Section 3 defines the representation of a single fax mode. Each section starts with
an overview of the applicable ITU-T Recommendation and then
describes the minimal black-
and-white facsimile mode required and optional TIFF fields for representing of all implementations. Section 4
defines the ITU data stream. The fields in each subsection are organized
according to whether they are baseline or extensions in optional extended black-and-white fax capabilities,
including TIFF-F. Section 5 defines the
current TIFF specification or that will appear in representation of lossy color
and grayscale facsimile. Section 6 defines the next
specification, or are new representation of
lossless color and defined in this document.
Sections 7 grayscale facsimile and Section 7 defines the
representation of mixed raster content facsimile.
Sections 8 and 9 describe the MIME content type and IANA registration.
The three remaining sections are required in
all Internet Drafts. Annex give Security Considerations, References
and Authors' Addresses. Appendix A gives a summary of the TIFF fields
used or defined in this document. Appendix B summarizes and describes
the use of TIFF-F for storing black-and-white images from current
implementations. This profile summarizes the work in progress [TIFF-F]
for the minimal interchange black-and-white mode. To implement only the
minimal interchange black-and-white set of fields and values, one need
read only Sections 1, 2, 3, 8, 9, and 10.
2. TIFF and Fax
2.1. TIFF Overview
This section is based on the current TIFF specification [TIFF] and
selected TIFF Technical Notes [TTN1, TTN2].
2.1.1. File Structure Some features of TIFF are:
- TIFF is capable of describing bilevel, grayscale, palette-color,
and full-color image data in several color spaces.
- TIFF includes a number of compression schemes that allow developers
to choose the best space or time tradeoff for their applications.
McIntyre & Zilles Expires 1/30/98 [Page 4]
Internet Draft File Format for Internet Fax July 30, 1997
- TIFF is not tied to specific scanners, printers, or computer
display hardware.
- TIFF is portable. It does not favor particular operating systems,
file systems, compilers, or processors.
- TIFF is designed to be extensible-to evolve gracefully as new needs
arise.
- TIFF allows the inclusion of an unlimited amount of private or
special-purpose information.
This specification employs these features in using TIFF to represent
black-and-white and color facsimile data.
2.1.1. File Structure
TIFF is designed for scanned images, which makes it a good match for
facsimile documents, which are multi-page scanned raster images. Each
raster image consists of a number of rows or scanlines, each of which
has the same number of pixels, the unit of sampling. Each pixel has at
least one sample (exactly one for black-and-white images).
A TIFF file begins with an 8-byte image file header that describes the
byte order used within the file, includes a value that identifies the
file as a TIFF file, and then gives an offset that points to the first
image file directory (IFD). The IFD can be at any location in the file
after the header but must begin on a word boundary.
An IFD is a sequence of tagged fields, sorted in ascending order by tag value, containing
value. An IFD consists of a 2-byte count of the number of fields, a
sequence of field entries and a 4-byte offset to the next IFD. The
fields contain information about the image and pointers to the image
data. Each separate raster image in the file is represented by an IFD.
Each IFD field entry has 12 bytes, consisting of a 2-byte tag, 2 bytes
identifying the field type, 4 bytes giving the field count or number of
values, and the 4-byte offset of the field value. If, based on the type
and count, the value takes 4 bytes or less, then it replaces the offset
in the field entry. Details are given in the TIFF specification [TIFF].
A TIFF file can contain more than one IFD, where each IFD is a subfile
whose type is given in the NewSubfileType field. Multiple IFDs can be
organized either as a linked list, with the last entry in each IFD
pointing to the next IFD (the pointer in the last IFD
McIntyre & Zilles Expires 9/20/97 [Page 4]
Internet Draft File Format for Internet Fax March 20, 1997 is 0), or as a
tree, using the SubIFDs field in the primary IFD [TTN1]. The SubIFDs
field contains an array of pointers to child IFDs of the primary IFD.
Child IFDs describe related images, such as a reduced resolution version versions
of the primary IFD image. The same IFD can point to both to a next IFD and
to child IFDs, and child IFDs can themselves point to other IFDs. A
Baseline TIFF reader is not required to read any IFDs beyond the first.
This specification requires the use of subfiles or multiple IFDs.
All four
McIntyre & Zilles Expires 1/30/98 [Page 5]
Internet Draft File Format for Internet Fax July 30, 1997
All fax modes represent a multi-page fax image as a linked list of IFDs,
with a NewSubfileType field containing a bit that identifies the IFD as
one page of a multi-page document. Each IFD has a PageNumber field,
identifying the page number, starting at 0 for the first page. Only the The Mixed
Raster Content fax mode, described in Section 6, requires 7, uses child IFDs. IFDs also.
2.1.2 Image Structure
An IFD can store stores an image either as one or more strips. A strip consists of 1 or
more scanlines (rows) of raster image data in compressed form. An image
may be stored in a single strip or split may be divided into
individually addressable several strips, for improved performance at the
option of the writer.
which would require less memory to buffer. (Baseline TIFF [TIFF]
recommends about 8k bytes per strip, but existing FAX usage is typically
one strip per image.)
Each IFD requires the StripOffsets field, which is an array of pointers
to the strip or strips that contain the actual image data. TIFF requires
that each strip, except the last, contain the same number of scanlines,
which is given in the RowsPerStrip field. This document introduces the
new StripRowCounts field that allows a variable number of scanlines per strip. This feature
strip, which is required by the Mixed Raster Content fax mode.
Whether stripped or not, the image
Image data is stored as uninterpreted uninterpreted, compressed data streams. streams within a
strip. The formats of these streams follow the ITU-T Recommendations.
The compressed data stream is placed
in a strip within an IFD, with the Compression field used to
indicate in the IFD indicates the type of compression, and
other TIFF fields used to in the IFD describe image attributes, such as color
encoding and spatial resolution. Compression parameters are stored in
the compressed data stream, rather than in additional TIFF fields. This makes the
TIFF representation and compression compressed data format specifications specification independent
of one each another. This approach, modeled on [TTN2], allows TIFF to
gracefully add new compression schemes as they become available.
To reduce overhead in TIFF files with multiple JPEG segments, one
can allow JPEG tables to be stored just once in a new
JPEGTables field [TTN2]. While this specification does not use
this field, this approach can be adapted for use with other
compression schemes, when all the data streams refer to the same
table and it would reduce file size to store the table once,
rather than replicate it throughout the file.
McIntyre & Zilles Expires 9/20/97 [Page 5]
Internet Draft File Format for Internet Fax March 20, 1997
For
Some attributes that can be specified both places, i.e. in the compressed data stream and
within a TIFF field, it field. It is possible that the two values will differ.
When this happens for values required to interpret the data stream, then
the values in the data stream would take precedence. For informational values
that are not required to interpret the data stream, such as author name,
then the TIFF field value normally would take takes precedence.
2.2 Fax requirements
2.2.1.
2.1.3 Recommended TIFF fields required File Structure for all fax modes
The Fax Applications
TIFF does not specify the ordering of IFDs, fields listed values and image data
in this section are common a file. It is up to all fax modes
and required by all fax modes. Other TIFF fields are also common individual applications to all modes, but the values associated with the field are mode-
specific. Such fields are described in the relevant sections
below.
The pattern for the field descriptions in this draft require or recommend
an ordering. In fax applications, it is
FieldName = values. TYPE
Count = (omitted if =1)
Tag = (if not in current spec but available)
Explanation of the field, how its used and recommended that the values it can
have.
ImageWidth. SHORT or LONG
Total number of pixels data be
ordered in a scanline.
ImageLength. SHORT or LONG
Total number of scanlines in image.
NewSubFileType = 2. LONG
2 = Bit 1 identifies TIFF file the image as same way it is ordered in a single fax transmission.
There would be an IFD for each page of in a multi-page document.
PageNumber. SHORT
Count = 2
The first number represents fax document, and
the page number (0 for IFDs would occur in the first
page); same order in the second number is file as the total number of pages occur in
the document. If the second value is 0, then The IFD for page 1 would come first, the total IFD for page count
is not available. This field is a TIFF extension, not a
Baseline TIFF field.
ResolutionUnit = 2, 3. SHORT 2 = inch
3 = centimeter
The unit of measure for resolution.
next, and so on.
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 6]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
RowsPerStrip. SHORT or LONG
The number of scanlines per TIFF strip.
StripByteCounts. SHORT or LONG
Count = number of strips
For each strip,
It is also recommended that the number field values and image data of bytes a given
IFD occur in that strip.
StripOffsets. SHORT or LONG
Count = number of strips
For each strip, the byte file between the offset from to the beginning next IFD and the start
of the file
to that strip.
2.2.2 TIFF fields recommended for all fax modes next IFD. The TIFF fields listed in this section are recommended, but not
required, for use with all fax modes. Recommended fields that are
mode-specific are described in the relevant sections below.
DateTime. ASCII
Date/time in values would come first, pointed to by the format "YYYY:MM:DD HH:MM:SS" in 24-hour
format.
DocumentName. ASCII
The name
value offsets of the scanned document. This field is a TIFF
extension, not a Baseline TIFF field.
ImageDescription. ASCII
A string describing entries in the contents of IFD, followed by the image.
Orientation = 1-8. SHORT
1: 0th row represents image
data, pointed to by the visual top values of the image; StripOffsets field. If the 0th
column represents image
data in the visual left side of IFD is stored in multiple strips, then the image. See strips would
occur in the current TIFF specification [TIFF] for further values.
Default = 1
Software. ASCII
The optional name and release number of file in the software package same order that created the image.
2.2.3. New TIFF fields for all fax modes
Almost all the fields recommended data they contain occurs in
the previous section apply to facsimile transmission, starting at the collection top of images that make up a TIFF-based the page.
This specification introduces an optional new GlobalParametersIFD field,
defined in Section 2.2.4. This field has type IFD and contains
parameters describing the fax session. While it is often possible to
obtain these parameters by scanning the file,
rather than it is convenient to any one specific image make
them available together in that file. It makes sense
to separate these "global" fields from one place for fast and easy access. If the image-specific fields
GlobalParametersIFD occurs in an IFD. It would also be useful to have a field, analogous to
the Software field, TIFF file, it is recommended that identifies it be
located in the fax mode used to create first IFD, immediately following the 8-byte image data.
McIntyre & Zilles Expires 9/20/97 [Page 7]
Internet Draft File Format file
header.
2.2 TIFF Fields for Internet Fax March 20, 1997
For these reasons, Applications
The TIFF specification is organized as a baseline and several new
extensions, including technical notes that will be incorporated in the
next release of TIFF. The baseline and extensions have required and
optional fields.
Facsimile applications require (and recommend) a mixture of baseline and
extensions fields, which as well as new fields that are not part of the
current TIFF specification,
specification and that are defined in this document. The
first new field, GlobalParametersIFD, is an IFD that contains
global parameters Sections 3-7 for
each fax mode have sub-sections for required and is located in a Primary IFD.
GlobalParametersIFD. IFD
An IFD containing global parameters. A TIFF writer would
likely place this field in the first IFD, where a reader would
find it quickly.
Each field in recommended fields;
each sub-section organizes the GlobalParametersIFD is fields according to whether they are
baseline, extension or new fields.
The fields required for facsimile have only a TIFF field that is few legal in any IFD. Required baseline fields should not be located values,
specified in the GlobalParametersIFD, but should be in each image IFD. If a
conflict exists between fields ITU-T Recommendations. Of these legal values, some are
required and some are optional, just as they are required (mandatory) or
optional in fax implementations that conform to the GlobalParametersIFD ITU-T
Recommendations. The required and
image IFDs, it is valid to use optional values are noted in the data closest to
sections on the image data,
otherwise different fax modes.
This section describes the image IFD is ill-formed and should be ignored.
Among the GlobalParametersIFD entries is a new ProfileType field
which generally describes information in this IFD and in the TIFF
file.
ProfileType: LONG
Tag: to be assigned fields required or recommended by more than
one fax mode. The type pattern for the description of image data stored TIFF fields in this IFD:
0
draft is
FieldName(TagValueInDecimal) = Unspecified
1 values. TYPE
WhetherRequiredByTIFForTIFFforFAX
Count = Group 3 fax
other values for further study
The following new global fields are defined in this document as
IFD entries for use with fax applications.
ITUFaxMode (omitted if =1) = 0 - 4. BYTE
Tag: to be assigned
The currently defined values are:
0: does (if not conform to ITU-T Recommendations for facsimile,
1: black & white lossless (ITU-T Rec. T.4, T.6),
2: lossy color and grayscale (ITU-T Rec. T.42),
3: lossless color in current spec but available)
Explanation of the field, how it's used, and grayscale (ITU-T Rec. T.43),
4: Mixed Raster Content (ITU-T Draft Rec. T.44).
Notes: A file the values it can use an ITU encoding with non-ITU parameters,
such as using JPEG to compress have.
Default value, if any
When a CMYK image. In this case,
ITUFaxMode field’s default value is 0.
CodingMethods. LONG
Tag: to be assigned
This the desired value, that field indicates which coding methods are used in may be
omitted from the
file. A bit value relevant IFD unless specifically required by the text
of 1 indicates:
Bit 0: unspecified compression, this specification.
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 8] 7]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
Bit 1: 1-dimensional coding, ITU-T Rec. T.4 (MH - Modified
Huffman),
Bit 2: 2-dimensional coding, ITU-T Rec. T.4 (MR - Modified
Read),
Bit 3: 2-dimensional coding, ITU-T Rec. T.6 (MMR - Modified
Modified Read),
Bit 4: ITU-T Rec. T.82 coding, applying ITU-T Rec. T.85
(JBIG),
Bit 5: ITU-T Rec. T.81 (Baseline JPEG),
Bits 6-31: reserved
2.2.1. TIFF Fields required for future use
Notes: There is a limit of 32 compression types to identify
standard compression methods.
VersionYear. BYTE
Tag: to be assigned
Count: 4 all fax modes
The year of the standard specified TIFF fields listed in this section are required by the ITUFaxMode field,
given as 4 characters, e.g. '1997'; used with T.42 and T.43.
VersionNumber BYTE
Tag: to be assigned all fax modes,
but do not have mode-specific values. The version of the standard specified by next sub-section lists the ITUFaxMode field.
A value
required fields common to all fax modes and which do have mode-specific
values.
ImageLength(257). SHORT or LONG
RequiredByTIFFBaseline
Total number of 0 indicates Version 1.0; used with MRC (Draft
T.44).
3. Base B&W Fax Mode
3.1. Overview
Base black-and-white mode scanlines in image.
No default, must be specified.
NewSubFileType(254) = (Bit 1=1). LONG
RequiredByTIFFforFAX, RequiredByTIFFBaseline
Bit 1 is 1 if the binary fax application most users
are familiar with today. This mode is appropriate for black-and-
white text and line art. It offers several options for lossless
bi-level image coding, including 1-dimensional Modified Huffman
(MH) and 2-dimensional Modified Read (MR), both described in
[T.4], and Modified Modified Read (MMR), described in [T.6]. (Read is an acronym a single page of a multi-page document.
Default = 0 (no subfile bits on)
PageNumber(285) SHORT
RequiredByTIFFforFAX, TIFFExtension
Count = 2
The first number represents the page number (0 for Relative Element Address Designate.)
Also available the first page);
the second number is the single-progression sequential mode total number of JBIG
[T.82], used pages in accordance with the application rules given in
ITU-T Rec. T.85 [T.85]. JBIG coding offers improved compression document. If
the second value is 0, then the total page count is not available.
ResolutionUnit(296) = 2, 3. SHORT
RequiredByTIFFBaseline
The unit of measure for halftoned originals.
This section resolution. 2 = inch, 3 = centimeter
Default = 2 (field may be omitted if this is based on the value)
RowsPerStrip(278). SHORT or LONG
RequiredByTIFFBaseline
The number of scanlines per TIFF Class F definition.
3.2. Required TIFF fields
This section lists strip. For a single strip image,
this is the required fields and same as the values they value of the ImageLength field.
Default = 2**32 - 1 (meaning all scanlines in one strip)
StripByteCounts(279). SHORT or LONG
RequiredByTIFFBaseline
Count = number of strips
For each strip, the number of bytes in that strip after compression.
No default, must
have be specified.
StripOffsets(273). SHORT or LONG
RequiredByTIFFBaseline
Count = number of strips
For each strip, the byte offset from the beginning of the file to
that strip.
No default, must be ITU-compatible. specified.
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 9] 8]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
3.2.1. Baseline
2.2.2 Additional TIFF Fields required for all fax modes
The TIFF fields
ImageWidth. SHORT or LONG
This listed in this section are required by all fax modes,
but the values associated with them depend on the particular fax mode supports
being described. Therefore, only the following fixed page widths: 1728,
2048, 2432, 2592, 3072, 3456, 3648, 4096, 4864.
BitsPerSample fields are defined here; the values
applicable to a particular fax mode are described in Sections 3-7.
BitsPerSample(258) SHORT
RequiredByTIFFBaseline
Number of bits per image sample
Default = 1. 1 (field may be omitted if this is the value)
Compression(259) SHORT
Binary data only.
RequiredByTIFFBaseline
Compression method used for strip data
Default = 2, 3, 4, 9. 1 (no compression, so may not be omitted for FAX)
ImageWidth(256) SHORT
2 = 1-dimensional coding, ITU-T Rec. T.4 (MH - Modified
Huffman)
3 = 2-dimensional coding, ITU-T Rec. T.4 (MR - Modified Read)
4 = 2-dimensional coding, ITU-T Rec. T.6 (MMR - Modified
Modified Read)
9 = ITU-T Rec. T.82 coding, applying ITU-T Rec. T.85 (JBIG)
FillOrder = 1, 2. SHORT
1 = Pixels are arranged within a byte such that pixels with
lower column values are stored in the higher-order bits or LONG
RequiredByTIFFBaseline
The number of samples per scanline (row) of the bytes, i.e., most significant bit first (MSB).
2 = Pixels are arranged within a byte such that pixels with
lower column values are stored in the lower-order bits image
No default, must be specified.
PhotometricInterpretation(262) SHORT
RequiredByTIFFBaseline
The color space of the bytes, i.e., least significant bit first (LSB).
Most b&w fax products use LSB first.
PhotometricInterpretation = 0, 1. image data
No default, must be specified
SamplesPerPixel(277) SHORT
0 = pixel value 1 means black
1 =
RequiredByTIFFBaseline
The number of components per pixel value 1 means white
SamplesPerPixel = 1. SHORT
1 = monochrome, bi-level in
Default =1 (field may be omitted if this case (see BitsPerSample)
XResolution. is the value)
XResolution(282) RATIONAL
RequiredByTIFFBaseline
The horizontal resolution of the image is expressed in pixels per
resolution unit. In pixels/inch, the allowed values are:
200, 204, 300, 400, and 406.
YResolution.
No default, must be specified
YResolution(283) RATIONAL
RequiredByTIFFBaseline
The vertical resolution of the image is expressed in pixels per
resolution unit. In pixels/inch, the allowed values are:
98, 100, 196, 200, 300, 392, and 400 pixels/inch
3.2.2. Extension
No default, must be specified
2.2.3 TIFF Fields recommended for all fax modes
The TIFF fields
T4Options = 0, 1, 4, 5. LONG
0: Required if Compression field has a value of 2, indicating listed in this section are recommended, but not
required, for use with all fax modes. Recommended fields that are mode-
specific are described in Section 3-7.
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 10] 9]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
Modified Huffman encoding, and if fill bits have not been
added to insure EOL codes end on a byte boundary.
1: Required if Compression field has a value
DateTime(306) ASCII
OptionalInTIFFBaseline
Date/time in the format "YYYY:MM:DD HH:MM:SS" in 24-hour format.
No default.
DocumentName(269) ASCII
OptionalInTIFFExtension
The name of 3, indicating
Modified Read encoding, and if fill bits have not been
added to insure EOL codes end on the scanned document. This is a byte boundary.
4: Required if Compression field has TIFF extension field,
not a value Baseline TIFF field.
No default.
ImageDescription(270) ASCII
OptionalInTIFFBaseline
A string describing the contents of 2, indicating
Modified Huffman encoding, and if fill bits have been
added to insure EOL codes end on a byte boundary.
5: Required if Compression field has a value the image.
No default.
Orientation(274) = 1-8 SHORT
RequiredByTIFFBaseline
1: 0th row represents the visual top of 3, indicating
Modified Read encoding, and if fill bits have been added
to insure EOL codes end on a byte boundary.
T6Options the image; the 0th column
represents the visual left side of the image. See the current TIFF
specification [TIFF] for further values.
Default = 0. LONG
Required 1 (field may be omitted if Compression field has a value this is the value)
Software(305) ASCII
OptionalInTIFFBaseline
The optional name and release number of 4, indicating 2D
Modified Modified Read.
3.2.3. New fields the software package that
created the image.
No new extensions are required default.
2.2.4 New TIFF Fields recommended for black & white fax.
3.3 Recommended fax modes
The new TIFF fields
3.3.1. Baseline fields
See Section 2.2.2.
3.3.2. Extension fields
See Section 2.2.2.
3.3.3. New fields
There listed in this section are three new optional fields recommended for describing black & white all fax page quality. They are not defined in the
modes, but their support is not expected for the minimal black-and-white
fax mode described in Section 3. These fields describe "global"
parameters of the fax session that created the image data. They are
optional, not part of the current TIFF
specification.
BadFaxLines. SHORT or LONG specification, and are defined in
this document.
The number of "bad" scan lines encountered by the facsimile
during reception. A "bad" scanline first new field, GlobalParametersIFD, is defined as a scanline
that, when decoded, comprises an incorrect number of pixels.
CleanFaxData = 0, 1, 2. SHORT
Indicates if "bad" lines encountered during reception are
stored IFD that contains global
parameters and is located in a Primary IFD.
GlobalParametersIFD(TagToBeAssigned). IFD
An IFD containing global parameters. It is recommended that a TIFF
writer place this field in the data, or if "bad" lines have been replaced by first IFD, where a TIFF reader would
find it quickly.
Each field in the receiver.
0 = No "bad" lines
1 = "bad" lines exist, but were regenerated by GlobalParametersIFD is a TIFF field that is legal in
any IFD. Required baseline fields should not be located in the receiver,
2 = "bad" lines exist,
GlobalParametersIFD, but have not been regenerated. should be in each image IFD. If a conflict
exists between fields in the GlobalParametersIFD and the image IFDs,
then the data in the image IFD shall prevail.
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 11] 10]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
ConsecutiveBadFaxLines. SHORT or
Among the GlobalParametersIFD entries is a new ProfileType field which
generally describes information in this IFD and in the TIFF file.
ProfileType(TagToBeAssigned) LONG
Maximum number
The type of consecutive "bad" scanlines received.
3.4. Base B&W Fax Mode Summary
Recommended fields are shown image data stored in this IFD:
0 = Unspecified
1 = Group 3 fax
Other values for further study
The following new global fields are defined in this document as IFD
entries for use with fax applications.
ITUFaxMode(TagToBeAssigned) = 0 - 4. BYTE
The currently defined values are:
0: does not conform to ITU-T Recommendations for facsimile,
1: minimal black & white lossless (ITU-T Rec. T.4),
2: extended black & white lossless (ITU-T Rec. T.6, T.85),
3: lossy color and grayscale (ITU-T Rec. T.42),
4: lossless color and grayscale (ITU-T Rec. T.43),
5: Mixed Raster Content (ITU-T Draft Rec. T.44).
Notes: In a file that uses an asterisk *
+---------------------------+--------------------------------+
| Baseline Fields | Values |
+---------------------------+--------------------------------+
| BitsPerSample | ITU encoding with non-ITU parameters,
e.g JPEG compression of CMYK data, ITUFaxMode is 0.
CodingMethods(TagToBeAssigned). LONG
This field indicates which coding methods are used in the file.
A bit value of 1 |
+---------------------------+--------------------------------+
| Compression | indicates:
Bit 0: unspecified compression,
Bit 1: 1-dimensional coding, ITU-T Rec. T.4 (MH - Modified Huffman),
Bit 2: 1D 2-dimensional coding, ITU-T Rec. T.4 (MR - Modified Huffman coding |
| | Read),
Bit 3: 2D 2-dimensional coding, ITU-T Rec. T.6 (MMR - Modified Read coding |
| | MR),
Bit 4: 2D Modified Modified Read |
| | ITU-T Rec. T.82 coding, applying ITU-T Rec. T.85 (JBIG),
Bit 5: ITU-T Rec. T.81 (Baseline JPEG),
Bits 6-31: reserved for future use
Notes: There is a limit of 32 coding |
| | 9: JBIG |
+---------------------------+--------------------------------+
| DateTime* | {ASCII}: date/time in methods.
VersionYear(TagToBeAssigned) BYTE
Count: 4
The year of the |
| | 24-hour format |
| | "YYYY:MM:DD HH:MM:SS" |
+---------------------------+--------------------------------+
| FillOrder | 1: most significant bit first |
| | 2: least significant bit first |
+---------------------------+--------------------------------+
| ImageDescription* | {ASCII}: A string describing |
| | standard specified by the contents ITUFaxMode field, given as
4 characters, e.g. '1997'; used in lossy and lossless color modes.
VersionNumber(TagToBeAssigned) BYTE
The version of the image. |
+---------------------------+--------------------------------+
| ImageWidth | 1728, 2048, 2432, 2592, 3072, |
| | 3456, 3648, 4096, 4864 |
+---------------------------+--------------------------------+
| ImageLength | n: total number standard specified by the ITUFaxMode field. A
value of scanlines |
| | 0 indicates Version 1.0; used in image |
+---------------------------+--------------------------------+
| NewSubFileType | 2: Bit 1 identifies single |
| | page Mixed Raster Content mode.
3. Minimal Black-and-White Fax Mode
Black-and-white mode is the binary fax application most users are
familiar with today. This mode is appropriate for black-and-white text
and line art. Black-and-white mode is divided into two levels of a multi-page document |
+---------------------------+--------------------------------+
| Orientation* | 1-8, Default 1 |
+---------------------------+--------------------------------+
| PhotometricInterpretation | 0: pixel value 1 means black |
| | 1: pixel value 1 means white |
+---------------------------+--------------------------------+
| ResolutionUnit | 2: inch |
| | 3: centimeter |
+---------------------------+--------------------------------+
| RowsPerStrip | n: number
capability. This section describes the minimal interchange set of scanlines per |
| | TIFF strip |
+---------------------------+--------------------------------+
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 12] 11]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
+---------------------------+--------------------------------+
| SamplesPerPixel | 1 |
+---------------------------+--------------------------------+
| Software* | {ASCII}: name & release |
| | number of creator software |
+---------------------------+--------------------------------+
| StripByteCounts | <n>: number or bytes
fields that must be supported by all implementations in TIFF |
| | strip |
+---------------------------+--------------------------------+
| StripOffsets | <n>: offset from beginning order to assure
that some form of |
| | file image, albeit black-and-white, can be interchanged.
Section 4 describes extensions to each the minimal interchange set of fields
that provide a richer set of black-and-white capabilities.
3.1. Overview
The minimal interchange portion of the black-and-white facsimile mode
supports the original Group 3 fax resolutions, commonly called
"standard" and "fine," and two compression methods: 1-dimensional
Modified Huffman (MH) and 2-dimensional Modified READ (MR) lossless
bilevel image coding [T.4]. (READ is an acronym for Relative Element
Address Designate.)
The minimal black-and-white mode corresponds to the original TIFF strip |
+---------------------------+--------------------------------+
| XResolution | 200, 204, 300, 400, 406 |
| | (written Class
F specification [TIFF-F0].
3.2. Required TIFF Fields
Besides the fields listed in pixels/inch) |
+---------------------------+--------------------------------+
| YResolution | 98, 196, 100, 200, 300, 392, |
| | 400 (written Section 2.2.1, the minimal black-and-white
fax mode requires the following fields. The fields listed in pixels/inch) |
+---------------------------+--------------------------------+
| Extension Section
2.2.1 and the fields and fax-specific values specified in this sub-
section must be supported by all implementations.
3.2.1 Baseline Fields |
+---------------------------+--------------------------------+
| T4Options | 0: required
BitsPerSample(258) = 1. SHORT
RequiredByTIFFBaseline
Binary data only.
Default = 1 (field may be omitted if Compression this is |
| | Modified Huffman, no fill bits |
| | 1: required if Compression the value)
Compression(259) = 3. SHORT
RequiredByTIFFBaseline
The value 3 is |
| | 2D Modified Read, no fill bits |
| | 4: required if Compression not a TIFF Baseline value [TIFF]; it is |
| | Modified Huffman, fill bits |
| | 5: required if Compression an extended
value. The T4Options field must be specified and its value
determines whether the data is |
| | 2D Modified Read, fill bits |
+---------------------------+--------------------------------+
| T6Options | 0: required if Compression encoded using the MH or MR encoding
of [T.4].
FillOrder(266) = 1, 2. SHORT
RequiredByTIFFBaseline
1 = Pixels are arranged within a byte such that pixels with lower
column values are stored in the higher-order bits of the bytes,
i.e., most significant bit first (MSB).
2 = Pixels are arranged within a byte such that pixels with lower
column values are stored in the lower-order bits of the bytes, i.e.,
least significant bit first (LSB).
The FillOrder field is |
| | 2D Modified Modified Read |
+---------------------------+--------------------------------+
| DocumentName* | {ASCII}: name used to describe how 1 bit pixels are stored
within a byte of scanned |
| | document |
+---------------------------+--------------------------------+
| PageNumber | n,m: page number followed by |
| | total page count |
+---------------------------+--------------------------------+
| New Fields |
+---------------------------+--------------------------------+
| BadFaxLines* | number compressed image data. There are two possible
FillOrders for each byte: 1) the pixels are stored with the lowest
numbered pixel in the byte in the Most Significant Bit (MSB) of "bad" scanlines |
| | encountered during reception |
+---------------------------+--------------------------------+
| CleanFaxData* | 0: no "bad" lines |
| | 1: "bad" lines exist, but were |
| | regenerated by receiver |
| | 2: "bad" lines exist, but have |
| | not been regenerated |
+---------------------------+--------------------------------+ the
byte, or 2) the pixels are stored with the lowest numbered pixel in
the byte in the Least Significant Bit (LSB) of the byte.
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 13] 12]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
+---------------------------+--------------------------------+
| ConsecutiveBadFaxLines* | Max number of consecutive |
| | "bad" lines received |
+---------------------------+--------------------------------+
| GlobalParametersIFD* | <IFD>: global parameters IFD |
+---------------------------+--------------------------------+
| ProfileType* | n: type of data stored in |
| |
NOTE: Baseline TIFF file |
+---------------------------+--------------------------------+
| ITUFaxMode* | n: ITU-compatible fax mode |
+---------------------------+--------------------------------+
| CodingMethods* | n: compression algorithms used |
| | in file |
+---------------------------+--------------------------------+
| VersionNumber* | n: version of ITU fax standard |
+---------------------------+--------------------------------+
| VersionYear* | byte sequence with year of |
| | ITU fax standard |
+---------------------------+--------------------------------+
4. Base Color Fax Mode
4.1. Overview
This is the base mode for color and grayscale facsimile, which
means that all applications that support color fax must readers are only required to support
this mode. The basic approach the first
FillOrder where the lowest numbered pixel is stored in the lossy JPEG compression [T.81] MSB of CIELAB color the
byte. However, because many devices, such as modems, transmit the LSB
first when converting the data [T.42]. Grayscale applications to serial form, it is common for black-
and-white FAX products to use the L*
lightness component; color applications use second FillOrder where the L*, a* and b*
components. lowest
numbered pixel is stored in the LSB.
ImageWidth(256) = 1728, 2048, 2432. SHORT or LONG
RequiredByTIFFBaseline
This mode uses a new PhotometricInterpretation field value to
describe supports the CIELAB encoding fixed page widths: 1728, 2048, 2432.
No default, must be specified.
PhotometricInterpretation(262) = 0, 1. SHORT
RequiredByTIFFBaseline
0 = pixel value 1 means black, 1 = pixel value 1 means white
No default, must be specified in [T.42]. Compared to the
other two CIELAB-based values
SamplesPerPixel(277) = 1. SHORT
RequiredByTIFFBaseline
The number of components per pixel; 1 for black-and-white
Default =1 (field may be omitted if this field, ITU-T Rec. T.42
specifies a different default range for is the a* and b* components,
based on a comprehensive evaluation value)
XResolution(282). RATIONAL
RequiredByTIFFBaseline
The horizontal resolution of existing hardcopy output.
It optionally allows a selectable range for the L*, a* and b*
components.
4.2. Required TIFF fields
This section lists image is expressed in pixels per
resolution unit. In pixels/inch, the required fields and allowed value is 204.
No default, must be specified
YResolution(283). RATIONAL
RequiredByTIFFBaseline
The vertical resolution of the applications they image is expressed in pixels per
resolution unit. In pixels/inch, the allowed values are 98 and 196.
No default, must support to be compatible with ITU-T Rec. T.42 specified
3.2.2 Extension Fields
T4Options(292) = (Bit 0 = 0 or 1, Bit 1 = 0, Bit 2 = 1) LONG
RequiredTIFFExtension (when Compression = 3)
Bit 0 = 1 indicates MR encoding, = 0 indicates MH encoding.
Bit 1 must be 0
Bit 2 = 1 indicates that fill bits are required, = 0 no fill bits
Default is all bits are 0 (therefore field must be specified)
The T4Options field is required if the Compression field has a value
of 3. The T4Options field specifies which encoding (MH or MR) is
used and Annex E whether fill bits are required. Fill bits are required in
ITU-T Rec. T.4.
the minimal interchange set. (See Section 3.4).
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 14] 13]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
4.2.1. Baseline
3.2.3 New Fields
ImageWidth.
None.
3.3 Recommended TIFF Fields
There are three new optional fields for describing black & white fax
page quality. They are not defined in the current TIFF specification
[TIFF].
BadFaxLines(326). SHORT or LONG
This mode supports
The number of "bad" scan lines encountered by the following fixed page widths: 864, 1024,
1216, 1728, 2048, 2432, 2592, 3072, 3456, 3648, 4096, 4864.
BitsPerSample facsimile device
during reception. A "bad" scanline is defined as a scanline that,
when decoded, comprises an incorrect number of pixels.
No default.
CleanFaxData(327) = 8, 12. 0, 1, 2. SHORT
Count = SamplesPerPixel
The base color fax mode requires 8 bits per sample, with 12 as
an option. 12 bits per sample is not baseline TIFF.
Compression = 7. SHORT
Base color fax mode uses Baseline JPEG compression. Value 7
represents JPEG compression as specified
Indicates if "bad" lines encountered during reception are stored in [TTN2], which also
defines a new extension field JPEGTables that is not used
here.
PhotometricInterpretation
the data, or if "bad" lines have been replaced by the receiver.
0 = 10. SHORT
Base color fax mode requires pixel values to be stored as
CIELAB, specified No "bad" lines
1 = "bad" lines exist, but were regenerated by the PhotometricInterpretation value 10,
referred to as ITULAB and which is based on receiver,
2 = "bad" lines exist, but have not been regenerated.
No default.
NOTE: Many facsimile devices do not actually output bad lines. Instead,
the sample value
encoding defined previous good line is repeated in ITU-T Rec. T.42. With place of a bad line. Although this encoding, the
minimum sample value is mapped
substitution, known as line regeneration, results in a visual
improvement to 0 and the maximum sample
value is mapped to (2^n - 1), i.e. image, the maximum value, where n data is BitsPerSample. nevertheless corrupted. The conversion from unsigned ITULAB-encoded samples values to
signed CIELAB values is determined by
CleanFaxData field describes the Decode field; see
Section 4.2.2
PhotometricInterpretation values 8 and 9 also specify CIELAB
encodings, but with different, fixed ranges than ITU-T Rec.
T.42, and so are not used for color fax.
Note: The intent error content of PhotometricInterpretation 10 is to broaden the scope of data. That is,
when the CIELAB parameter space BadFaxLines and not just support
color fax. Therefore, ImageLength fields indicate that the name and default Decode values are
still under discussion.
SamplesPerPixel = 1, 3. SHORT
1: L* component only
3: L*, a*, b* components
Encoded according to PhotometricInterpretation facsimile
device encountered lines with an incorrect number of pixels during
reception, the CleanFaxData field
XResolution. RATIONAL
YResolution. RATIONAL indicates whether these lines are
actually in the data or if the receiving facsimile device replaced them
with regenerated lines.
ConsecutiveBadFaxLines(328). SHORT or LONG
Maximum number of consecutive "bad" scanlines received. The resolution
BadFaxLines field indicates only the quantity of bad lines. The
ConsecutiveBadFaxLines field is an indicator of the distribution of
bad lines and may therefore be a better general indicator of
perceived image is expressed quality.
No Default.
3.4 End of Line Restrictions
The minimal interchange set of fields and values for black-and-white fax
requires all EOLs in pixels per
resolution unit. In pixels per inch, allowed XResolution compressed image data must be byte-aligned. An EOL
is said to be byte-aligned when fill bits have been added as necessary
before EOL codes such that EOL always ends on a byte boundary, thus
ensuring an EOL-sequence of a one byte preceded by a zero nibble:
xxxx0000 00000001.
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 15] 14]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
values are: 100, 200, 300, and 400. The base color fax mode
requires
Recall that Huffman encoding encodes bits, not bytes. This means that
the pixels to be square, hence YResolution must equal
XResolution.
4.2.2 Extension fields
The JPEG compression standard allows for end-of-line token may end in the a*b* chroma
components middle of a byte. In byte
alignment, extra zero bits (Fill) are added so that the first bit of
data following an image to be subsampled relative to EOL begins on a byte boundary. In effect, byte
alignment relieves application software of the L*
lightness component. burden of bit-shifting
every byte while parsing scan lines for line-oriented image manipulation
(such as writing a TIFF file).
3.5 Minimal Black-and-White Fax Mode Summary
The extension fields ChromaSubSampling and
ChromaPositioning define table below summarizes the subsampling. They are TIFF fields that comprise the same as
YCbCrSubSampling minimal
interchange set for black-and-white facsimile. The Baseline and YCbCrPositioning,
Extension fields must be supported by all implementations. For
convenience in the table, certain fields which have been renamed to
reflect their applicability to other color spaces.
ChromaSubSampling. SHORT
Count = 2
Specifies the subsampling factors for the chroma components of a CIELAB image. The two subfields of this field,
ChromaSubsampleHoriz and ChromaSubsampleVert, specify the
horizontal and vertical subsampling factors respectively.
SHORT 0: ChromaSubsampleHoriz = 1, 2, 4.
1: equal numbers of lightness and chroma samples
horizontally,
2: twice as many lightness samples as chroma samples
horizontally,
4: four times as many lightness samples as chroma samples
horizontally.
SHORT 1: ChromaSubsampleVert = 1, 2, 4.
1: equal numbers of lightness and chroma samples vertically,
2: twice as many lightness samples as chroma samples
vertically,
4: four times as many lightness samples as chroma samples
vertically.
The default value for ChromaSubSampling is (1,1) for
LAB-based images, which is an option for color fax. The color
fax default that is (2,2), which must be specified explicitly in
the IFD.
ChromaPositioning = 1, 2. SHORT
Specifies the spatial positioning a
sequence of chroma components
relative flag bits are shown taking integer values that correspond to
the lightness component. See flags that are set. An implementation should test the current TIFF
specification under YCbCrPositioning for further information.
1: centered,
2: cosited.
Default = 1, which is what ITU-T T.4, Annex E specifies.
McIntyre & Zilles Expires 9/20/97 [Page 16]
Internet Draft File Format for Internet Fax March 20, 1997
Decode. SSHORT
Count = 2 * SamplesPerPixel
Describes how setting of the
relevant flag bits individually, however, to allow extensions to map image sample values into the range
sequence of
values appropriate flag bits to be appropriately ignored. (See, for the current color space. In general,
the values example,
T4Options below.)
Fields suffixed with an asterisk, "*", are taken in pairs and specify the minimum optional fields and
maximum output value for each color component. For the base
color fax mode, Decode maps from the ITULAB encoding to CIELAB
and has a count of 6 values. In this case, the input is an
unsigned ITULAB-encoded value and the output is a signed
CIELAB value.
L* = Decode[0] + Lsample x (Decode[1]-Decode[0])/(2^n -1)
a* = Decode[2] + asample x (Decode[3]-Decode[2])/(2^n -1)
b* = Decode[4] + bsample x (Decode[5]-Decode[4])/(2^n -1)
where Decode[0] is the minimum value for L*, Decode[1] is the
maximum value, etc. and n is the BitsPerSample field value,
either 8 or 12.
ITU-T Rec. T.42 specifies the ITULAB encoding in terms of a
range and offset for each component, which are related
to the Decode field values as follows:
Decode[0] = - (Lrange x Loffset) / 2^n
Decode[1] = Decode[0] + Lrange
The following table gives the default range and offsets, as
specified in ITU-T Rec. T.42, and the corresponding minimum
and maximum CIELAB component and ITULAB encoded values.
+-----------------------------------------------------------+
| Component | Rec. T.42 need not
be specified.
+---------------------------+--------------------------------+
| CIELAB Baseline Fields | ITULAB Values |
+---------------------------+--------------------------------+
| BitsPerSample | defaults 1 | values
+---------------------------+--------------------------------+
| encoding Compression |
+-----------+------------------+------------+---------------+ 3: 1D Modified Huffman coding |
| Range | Offset set T4Options = 4 | Min
| Max | Min 3: 2D Modified Read coding | Max
|
+-----------+--------+---------+------+-----+-----+---------+ | L* set T4Options = 5 | 100
+---------------------------+--------------------------------+
| 0 FillOrder | 0 1: most significant bit first | 100
| 0 | 2^n - 1 2: least significant bit first |
+-----------+--------+---------+------+-----+-----+---------+
+---------------------------+--------------------------------+
| a* ImageWidth | 170 1728, 2048, 2432 | 128
+---------------------------+--------------------------------+
| -85 ImageLength | 85 n: total number of scanlines | 0
| 2^n - 1 |
+-----------+--------+---------+------+-----+-----+---------+ in image | b*
+---------------------------+--------------------------------+
| 200 NewSubFileType | 96 2: Bit 1 identifies single | -75
| 125 | 0 page of a multi-page document | 2^n -
+---------------------------+--------------------------------+
| PageNumber | n,m: page number n followed by |
| | total page count m |
+---------------------------+--------------------------------+
| PhotometricInterpretation | 0: pixel value 1 means black |
+-----------+--------+---------+------+-----+-----+---------+
| | 1: pixel value 1 means white |
+---------------------------+--------------------------------+
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 17] 15]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
The default value for Decode is (0, 100, -85, 85, -75, 125),
which is based on the ITULAB encoding, with
PhotometricInterpretation 10, SamplesPerPixel 3, and
BitsPerSample 8.
Note: The intent of PhotometricInterpretation 10 is to broaden
the scope of the CIELAB parameter space and not just support
color fax. Therefore, the name and default Decode values are
still under discussion.
4.2.3. New fields
None.
4.3. Recommended TIFF fields
See Sections 2.2.2. and 2.2.3.
4.4 Base Color Fax Mode Summary
Recommended fields are shown with an asterisk *
+---------------------------+--------------------------------+
| Baseline Fields ResolutionUnit | 2: inch |
| Values | 3: centimeter |
+---------------------------+--------------------------------+
| BitsPerSample RowsPerStrip | 8: 8 bits n: number of scanlines per color sample |
| | 12: optional 12 bits/sample TIFF strip |
+---------------------------+--------------------------------+
| Compression SamplesPerPixel | 7: JPEG 1 |
+---------------------------+--------------------------------+
| DateTime* StripByteCounts | {ASCII}: date/time <n>: number or bytes in the TIFF |
| | 24-hour format strip |
+---------------------------+--------------------------------+
| StripOffsets | "YYYY:MM:DD HH:MM:SS" <n>: offset from beginning of |
+---------------------------+--------------------------------+
| ImageDescription* | {ASCII}: A string describing file to each TIFF strip |
+---------------------------+--------------------------------+
| XResolution | the contents of the image. 204 (pixels/inch) |
+---------------------------+--------------------------------+
| ImageWidth YResolution | 864, 1024, 1216, 1728, 2048, 98, 196 (pixels/inch) |
+---------------------------+--------------------------------+
| Extension Fields | 2432, 2592, 3072, 3456, 3648,
+---------------------------+--------------------------------+
| T4Options | 4: Modified Huffman, fill bits | 4096, 4864
|
+---------------------------+--------------------------------+ | ImageLength required | n: total number of scanlines
| | 5: 2D Modified Read, fill bits | in image
|
+---------------------------+--------------------------------+ | NewSubFileType | 2: Bit 1 identifies single page|
| | of a multi-page document |
+---------------------------+--------------------------------+
McIntyre & Zilles Expires 9/20/97 [Page 18]
Internet Draft File Format for Internet Fax March 20, 1997
+---------------------------+--------------------------------+
| Orientation* | 1-8, Default 1 |
+---------------------------+--------------------------------+
| PhotometricInterpretation | 10: ITULAB required |
+---------------------------+--------------------------------+
| ResolutionUnit | 2: inch |
| | 3: centimeter New Fields |
+---------------------------+--------------------------------+
| RowsPerStrip BadFaxLines* | n: number of "bad" scanlines per |
| | TIFF strip encountered during reception |
+---------------------------+--------------------------------+
| SamplesPerPixel | 1: L* (lightness) |
| CleanFaxData* | 3: LAB 0: no "bad" lines |
+---------------------------+--------------------------------+
| Software* | {ASCII}: name & release number 1: "bad" lines exist, but were |
| | of creator software regenerated by receiver |
+---------------------------+--------------------------------+
| StripByteCounts | <n>: number or bytes in 2: "bad" lines exist, but have |
| | TIFF strip not been regenerated |
+---------------------------+--------------------------------+
| StripOffsets | <n>: offset from beginning |
| ConsecutiveBadFaxLines* | Max number of file to each TIFF strip |
+---------------------------+--------------------------------+
| XResolution | 100, 200, 300, 400 (written consecutive |
| | in pixels/inch) "bad" lines received |
+---------------------------+--------------------------------+
| YResolution | equal to XResolution (pixels |
| |
4. Extended Black-and-white fax mode
4.1 Overview
The previous section described the minimal interchange set of TIFF
fields that must be square) |
+---------------------------+--------------------------------+
| Extension Fields |
+---------------------------+--------------------------------+
| DocumentName* | {ASCII}: name of scanned |
| | document |
+---------------------------+--------------------------------+
| PageNumber | n,m: page number followed supported by |
| | total page count |
+---------------------------+--------------------------------+
| Decode | minL, maxL, mina, maxa, minb, |
| | maxb: minimum and maximum |
| | values for CIELAB |
+---------------------------+--------------------------------+
| ChromaSubSampling | ChromaSubsampleHoriz: |
| | 0: equal numbers all implementations in order to assure
that some form of lightness |
| | and chroma samples |
| | 1: twice as many lightness |
| | samples as chroma samples | image, albeit black-and-white, can be interchanged.
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 19] 16]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
| | 2: four times as many |
| | lightness samples as chroma |
| | samples |
| | ChromaSubsampleVert: |
| | 0: equal numbers
This section describes extensions to the minimal interchange set of lightness |
| |
fields that provide a richer set of black-and-white capabilities. In
addition to the MH and chroma samples |
| | 1: twice as many lightness |
| | samples as chroma samples |
| | 2: four times as many lightness|
| | samples MR encodings, Modified Modified READ (MMR) as chroma samples |
+---------------------------+--------------------------------+
| ChromaPositioning | 1: centered |
| | 2: cosited |
+---------------------------+--------------------------------+
| New Fields |
+---------------------------+--------------------------------+
| GlobalParametersIFD* | <IFD>: IFD containing |
| | global parameters |
+---------------------------+--------------------------------+
| ProfileType* | n: type of data stored
described in |
| | TIFF file |
+---------------------------+--------------------------------+
| ITUFaxMode* | n: ITU-compatible fax [T.6] is supported. Also available is the single-
progression sequential mode |
+---------------------------+--------------------------------+
| CodingMethods* | n: compression algorithms |
| | of JBIG [T.82], used in file |
+---------------------------+--------------------------------+
| VersionNumber* | n: version of ITU fax standard |
+---------------------------+--------------------------------+
| VersionYear* | byte sequence accordance with year of |
| | ITU fax standard |
+---------------------------+--------------------------------+
5. Lossless Color Mode
5.1. Overview
This mode, defined the
application rules given in [T.43], uses ITU-T Rec. T.85 [T.85]. JBIG to losslessly code three
types coding offers
improved compression for halftoned originals.
This section also provides a standard, updated definition of color and grayscale images: one bit per color CMY, CMYK TIFF-F,
also known as TIFF Class F,equivalent to that found in [TIFF-F]. It has
been proposed to make [TIFF-F] an informational RFC.
4.2. Required TIFF Fields
This section lists the required fields and RGB images; the values they must have to
be ITU-compatible. Besides the fields listed in Section 2.2.1, the
extended black-and-white fax mode requires the following fields.
4.2.1. Baseline Fields
BitsPerSample(258) = 1. SHORT
RequiredByTIFFBaseline
Binary data only.
Default = 1 (field may be omitted if this is the value)
Compression(259) = 3, 4, 9. SHORT
RequiredByTIFFBaseline
3 = 1- or 2- dimensional coding, must have T4Options field This is
a palettized (i.e. mapped) color image; and
continuous tone color and grayscale images. The last two are
multi-level and use TIFF Extension value [TIFF].
4 = 2-dimensional coding, ITU-T Rec. T.6 (MMR - Modified Modified
Read, must have T6Options field)) This is a TIFF Extension value.
9 = ITU-T Rec. T.82 coding, applying ITU-T Rec. T.85 (JBIG) This is
a TIFF Extension value.
Default = 1 (and is not applicable; field must be specified)
ImageWidth(256) SHORT or LONG
RequiredByTIFFBaseline
This mode supports the CIELAB encoding following fixed page widths: 1728, 2048,
2432, 2592, 3072, 3456, 3648, 4096, 4864.
No default; must be specified
PhotometricInterpretation(262) = 0, 1. SHORT
RequiredByTIFFBaseline
0 = pixel value 1 means black 1 = pixel value 1 means white
No default, must be specified
SamplesPerPixel(277) = 1. SHORT
RequiredByTIFFBaseline
1 = monochrome, bilevel in [T.42]. this case (see BitsPerSample)
Default =1 (field may be omitted if this is the value)
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 20] 17]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
5.1.1. Color Encoding
While under development, this mode was called T.Palette, as one
XResolution(282) RATIONAL
RequiredByTIFFBaseline
The horizontal resolution of
its major additions was palette or mapped color images. Baseline
TIFF only allows RGB color maps, but ITU-T Rec. T.43 requires
CIELAB color maps, using the encoding specified in ITU-T Rec.
T.42. Palette color images are image is expressed with indices (bits per
sample) of 12 bits or less, or optionally 13 to 16 bits.
To enable T.43 color maps in TIFF requires pixels per
resolution unit. In pixels/inch, the extension field
Indexed, defined in [TTN1], allowed values are: 200, 204,
300, 400, and 406.
No default, must be specified
YResolution(283) RATIONAL
RequiredByTIFFBaseline
The vertical resolution of the PhotometricInterpretation
field value 10, defined image is expressed in Section 4.2.1. pixels per
resolution unit. In pixels/inch, the allowed values are: 98, 100,
196, 200, 300, 392, and 400 pixels/inch
No default, must be specified
NOTE: Not all combinations of XResolution, YResolution and ImageWidth
are legal. The following table
shows how T.43 image data is interpreted, using gives the
PhotometricInterpretation, SamplesPerPixel, BitsPerSample legal combinations for inch-
based resolutions and
Indexed fields.
+----------------------------------------------------------+
| Image Type corresponding paper sizes [T.30].
+--------------+-----------------+---------------------------+
| PhotoInter- XResolution x YResolution | Samples ImageWidth | Bits Per
+--------------+-----------------+---------------------------+
| Indexed 200x100,200x200,200x400 | 1728 | 2048 | pretation 2432 | PerPixel
+--------------+-----------------+---------------------------+
| Sample 300 x 300 | 2592 |
|------------+-------------+----------+----------+---------| 3072 | RGB 3648 | 2=RGB
+--------------+-----------------+---------------------------+
| 3 400 x 400 | 1 3456 | 0 4096 |
+----------------------------------------------------------+ 4864 | CMY
+--------------+-----------------+---------------------------+
|Letter,A4| B4 | 5=CMYK A3 | 3
+---------+--------+--------+
| 1 Paper Size |
+---------------------------+
FillOrder(266) = 1, 2. SHORT
See 3.2.1 above
4.2.2. Extension Fields
T4Options(292) = (Bit 0 |
+------------+-------------+----------+----------+---------+
| CMYK | 5=CMYK | 4 | = 0 or 1, Bit 1 | = 0, Bit 2 = 0 |
+------------+-------------+----------+----------+---------+
| Palette | 10=ITULAB | or 1) LONG
RequiredTIFFExtension (when Compression = 3)
T4Options was known as Group3Options in a prior version of [TIFF].
Bit 0 = 1 | n | indicates MR encoding, = 0 indicates MH encoding.
Bit 1 |
+------------+-------------+----------+----------+---------+
| Grayscale | 10=ITULAB | must be 0
Bit 2 = 1 | 8, 12 | indicates that fill bits are required, = 0 |
+------------+-------------+----------+----------+---------+
| Color | 10=ITULAB | 3 | 8, 12 | 0 |
+------------+-------------+----------+----------+---------+
5.1.2. JBIG Encoding
T.43 uses the single-progression sequential mode of JBIG, defined
in ITU-T Rec. T.82, in accordance with the application rules
described in ITU-T Rec. T.85. To code multi-level images using
JBIG, which is a bi-level compression method, an image is resolved
into a set of bit-planes using Gray code conversion, and each bit-
plane is then JBIG compressed. The Gray code conversion is part of
the data stream encoding, and no fill bits
Default is therefore invisible to TIFF.
5.2. Required TIFF Fields
This section lists the required fields and the values they all bits are 0 (field must
have to be compatible with ITU-T Rec. T.43. specified for fax,see
3.2.2.)
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 21] 18]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
5.2.1. Baseline fields
ImageWidth. SHORT or LONG
Same page widths as the base color mode; see Section 4.2.1.
BitsPerSample
T6Options(293) = 1, 8, 9-16. SHORT
Count (Bit 0 = SamplesPerPixel
RGB, CMY, CMYK: 0, Bit 1 bit per sample
Continuous tone (CIELAB): 8 bits per sample, 12 bits optional
Palette color: 12 or fewer bits per sample, 13-16 bits
optional
Note: More than 8 bits per sample = 0). LONG
RequiredTIFFExtension (when Compression = 4)
Used to indicate parameterization of 2D Modified Modified Read
compression.
Bit 0 must be 0.
Bit 1 = 0 indicates uncompressed data mode is not baseline TIFF.
ColorMap. SHORT
Count allow; = 3 * (2**BitsPerSample)
Lossless color fax mode supports palette-color (indexed)
images where 1
indicates uncompressed data is allowed (see [TIFF]).
Default is all bits 0. For FAX, the field must be present and have
the single component value 0. The use of uncompressed data where compression would
expand the data size is used as an index
into a full color lookup table stored not allowed for FAX.
4.2.3. New Fields
None.
4.3. Recommended TIFF Fields
4.3.1. Baseline Fields
See Section 2.2.3.
4.3.2. Extension Fields
See Section 2.2.3.
4.3.3. New Fields
See Sections 2.2.4 and 3.3.
4.4. TIFF-F Definition
TIFF-F, also known as TIFF Class F, was originally defined in 1989
[TIFF-F0]. Recent discussions and work have proposed updating it to
include MMR compression and higher resolutions, which the ColorMap field.
With lossless color fax mode, only the ITULAB encoding with 8
bits per sample is supported ITU-T has
approved for palette-color images. To
utilize a color map, use with Group 3 facsimile. If JBIG compression
(Compression=9) and the TIFF Indexed field must be present.
TIFF orders global parameters are excluded, then the color map values so that all
extended black-and-white mode described in this section corresponds to
the L* most recent proposal for TIFF-F [TIFF-F]. Therefore, this section
provides a standard definition of TIFF-F.
4.5. Extended Black-and-white Fax Mode Summary
Recommended fields are shown with an asterisk *.
Required fields or values
come first, followed by all are shown with a double asterisk **. If the a* values and
double asterisk is on the field name, then all the b*
values. Because ITU-T Rec. T.43 specifies a "chunky" ordering
with the L*a*b*components listed values are
required of implementations; if the first value, followed by
those of double asterisks are in the Values
column, then only the second value, and so on, transferring color map values between suffixed with a TIFF file and fax data stream requires
reordering values.
Compression = 9. SHORT
9: ITU-T Rec. T.82 coding, applying ITU-T Rec. T.85 (JBIG)
FillOrder = 1, 2. SHORT
This field is only relevant for 1 bit per sample color (RGB,
CMY, CMYK); see Section 3.2.1 for further information.
PhotometricInterpretation = 2, 5, 10. SHORT
2: RGB
5: CMYK, including CMY
10: ITULAB
Image data may also be stored as palette color images, where
pixel values are represented by a single component that is an
index into a color map using the ITULAB encoding. This color
map is specified by the ColorMap field. To use palette color
images, set the PhotometricInterpretation to 10,
McIntyre & Zilles Expires 9/20/97 [Page 22]
Internet Draft File Format double asterisk are
required of implementations.
McIntyre & Zilles Expires 1/30/98 [Page 19]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
SamplesPerPixel to 1,
+---------------------------+--------------------------------+
| Baseline Fields | Values |
+---------------------------+--------------------------------+
| BitsPerSample | 1** |
+---------------------------+--------------------------------+
| Compression | 3**: 1D Modified Huffman and Indexed to 1. The color map is
stored |
| | 2D Modified Read coding |
| | 4: 2D Modified Modified Read |
| | coding |
| | 9: JBIG |
+---------------------------+--------------------------------+
| DateTime* | {ASCII}: date/time in the ColorMap field. See Section 5.1.1 for further
discussion on the color encoding.
SamplesPerPixel = 1, 3, 4. SHORT |
| | 24-hour format |
| | "YYYY:MM:DD HH:MM:SS" |
+---------------------------+--------------------------------+
| FillOrder** | 1: Palette color image, or L*-only if Indexed = 0 and
PhotometricInterpretation is 10 (ITULAB).
3: RGB, or CIELAB, or CMY if PhotometricInterpretation is 5
(CMYK).
4: CMYK.
XResolution. RATIONAL
YResolution. RATIONAL
The resolution most significant bit first |
| | 2: least significant bit first |
+---------------------------+--------------------------------+
| ImageDescription* | {ASCII}: A string describing |
| | the contents of the image is expressed in pixels per
resolution unit. In pixels per inch, allowed XResolution
values are: 100, 200, 300, and 400. The lossless color fax
mode requires the pixels to be square, hence YResolution must
equal XResolution.
5.2.2. Extension fields
Indexed = 0, 1. SHORT
0: not a palette-color image
1: palette-color image
This field is used to indicate that the sample values are an
index into an array of color values specified in the ColorMap
field. Lossless color fax mode supports palette-color images
with the ITULAB encoding. The SamplesPerPixel value must be
1.
Decode SHORT
Decode is used in connection with the ITULAB encoding of image
data; see Section 4.2.2.
5.2.3. New Fields
None.
5.3. Recommended TIFF fields
See Sections 2.2.2. and 2.2.3.
McIntyre & Zilles Expires 9/20/97 [Page 23]
Internet Draft File Format for Internet Fax March 20, 1997
5.4. Lossless Color Fax Mode Summary
Recommended fields are shown with an asterisk *
+--------------------|--------------------------------------+
| Baseline Fields | Values |
+--------------------+--------------------------------------+
| BitsPerSample | 1: Binary RGB, CMY(K) image. |
+---------------------------+--------------------------------+
| ImageWidth | 8: 8 bits per color sample 1728**, 2048**, 2432**, 2592, |
| | 9-16: optional 3072, 3456, 3648, 4096, 4864 |
+--------------------+--------------------------------------+
+---------------------------+--------------------------------+
| ColorMap ImageLength** | n: LAB color map total number of scanlines |
+--------------------+--------------------------------------+
| Compression | 9: JBIG in image |
+--------------------+--------------------------------------+
+---------------------------+--------------------------------+
| DateTime* NewSubFileType** | {ASCII}: date/time in the 24-hour 2: Bit 1 identifies single |
| | format "YYYY:MM:DD HH:MM:SS" page of a multi-page document |
+--------------------+--------------------------------------+
+---------------------------+--------------------------------+
| FillOrder Orientation* | Applies only to 1-8, Default 1 bit/sample |
+---------------------------+--------------------------------+
| PhotometricInterpretation | encodings 0: pixel value 1 means black |
| ** | 1: Most significant bit first pixel value 1 means white |
+---------------------------+--------------------------------+
| ResolutionUnit** | 2: Least significant bit first inch |
+--------------------+--------------------------------------+
| ImageDescription* | {ASCII}: A string describing the 3: centimeter |
+---------------------------+--------------------------------+
| RowsPerStrip** | contents n: number of the image. scanlines per |
+--------------------+--------------------------------------+
| ImageWidth | 864, 1024, 1216, 1728, 2048, 2432, TIFF strip |
+---------------------------+--------------------------------+
| SamplesPerPixel** | 2592, 3072, 3456, 3648, 4096, 4864 |
+--------------------+--------------------------------------+
| ImageLength | n: total number of scanlines in image|
+--------------------+--------------------------------------+
| NewSubFileType | 2: Bit 1 identifies single page of a |
| | multi-page document |
+--------------------+--------------------------------------+
| Orientation* | 1-8, Default 1 |
+--------------------+--------------------------------------+
| PhotometricInter- | 2: RGB |
| pretation | 5: CMYK |
| | 10: ITULAB |
+--------------------+--------------------------------------+
| ResolutionUnit | 2: inch |
| | 3: centimeter |
+--------------------+--------------------------------------+
| RowsPerStrip | n: number of scanlines per TIFF strip|
+--------------------+--------------------------------------+
| SamplesPerPixel | 1: L* (lightness) |
| | 3: LAB, RGB, CMY |
| | 4: CMYK |
+--------------------+--------------------------------------+
McIntyre & Zilles Expires 9/20/97 [Page 24]
Internet Draft File Format for Internet Fax March 20, 1997
+--------------------+--------------------------------------+
+---------------------------+--------------------------------+
| Software* | {ASCII}: name & release number of |
| | number of creator software |
+--------------------+--------------------------------------+
+---------------------------+--------------------------------+
| StripByteCounts StripByteCounts** | <n>: number or bytes in TIFF |
| | strip |
+--------------------+--------------------------------------+
+---------------------------+--------------------------------+
| StripOffsets StripOffsets** | <n>: offset from beginning of file to| |
| | file to each TIFF strip |
+--------------------+--------------------------------------+
+---------------------------+--------------------------------+
McIntyre & Zilles Expires 1/30/98 [Page 20]
Internet Draft File Format for Internet Fax July 30, 1997
+---------------------------+--------------------------------+
| XResolution | 100, 200, 204**, 300, 400 (written in 400, 406 |
| | (written in pixels/inch) |
+---------------------------+--------------------------------+
| YResolution | equal to XResolution (pixels must be 98**, 196**, 100, |
| | square) 200, 300, 392, 400 |
+--------------------+--------------------------------------+
| | (written in pixels/inch) |
+---------------------------+--------------------------------+
| Extension Fields |
+--------------------+--------------------------------------+
+---------------------------+--------------------------------+
| Decode T4Options | minL, maxL, mina, maxa, minb, maxb: 0: required if Compression is |
| |minimum and maximum values for CIELAB |
+--------------------+--------------------------------------+ Modified Huffman, no fill bits | DocumentName*
| {ASCII}: name of scanned document |
+--------------------+--------------------------------------+ 1: required if Compression is | PageNumber
| n,m: page number followed by total | 2D Modified Read, no fill bits |
| page count |
+--------------------+--------------------------------------+ 4**: required if Compression | Indexed
| 0: not a palette-color image | is Modified Huffman, fill bits |
| 1: palette-color image |
+--------------------+--------------------------------------+ 5**: required if Compression |
| | is 2D Modified Read, fill bits |
+---------------------------+--------------------------------+
| T6Options | 0: required if Compression is |
| | 2D Modified Modified Read |
+---------------------------+--------------------------------+
| DocumentName* | {ASCII}: name of scanned |
| | document |
+---------------------------+--------------------------------+
| PageNumber** | n,m: page number followed by |
| | total page count |
+---------------------------+--------------------------------+
| New Fields |
+--------------------+--------------------------------------|
+---------------------------+--------------------------------+
| GlobalParameters BadFaxLines* | number of "bad" scanlines |
| | encountered during reception |
+---------------------------+--------------------------------+
| CleanFaxData* | 0: no "bad" lines |
| | 1: "bad" lines exist, but were |
| | regenerated by receiver |
| | 2: "bad" lines exist, but have |
| | not been regenerated |
+---------------------------+--------------------------------+
| ConsecutiveBadFaxLines* | Max number of consecutive |
| | "bad" lines received |
+---------------------------+--------------------------------+
| GlobalParametersIFD* | <IFD>: global parameters IFD |
| IFD* | |
+--------------------+--------------------------------------+
+---------------------------+--------------------------------+
| ProfileType* | n: type of data stored in |
| | TIFF file |
+--------------------+--------------------------------------+
+---------------------------+--------------------------------+
| ITUFaxMode* | n: ITU-compatible fax mode |
+--------------------+--------------------------------------+
+---------------------------+--------------------------------+
| CodingMethods* | n:compression n: compression algorithms used in |
| | in file |
+--------------------+--------------------------------------+
| VersionNumber* | n: version of ITU fax standard |
+--------------------+--------------------------------------+
| VersionYear* | byte sequence with year of ITU fax |
| | standard |
+--------------------+--------------------------------------+
+---------------------------+--------------------------------+
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 25] 21]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
6. Mixed Raster Content
5. Base Color Fax Mode
6.1.
5.1. Overview
Unlike previous fax modes, which use a single coding method and
spatial resolution for an entire fax page,
This is the Mixed Raster
Content base mode [MRC] enables different coding methods and
resolutions within a single page. For example, consider a page
that contains black-and-white text, which is best coded with MMR
or JBIG, a for color bar chart, best coded with JBIG, and a scanned grayscale facsimile, which means
that all applications that support color image, best coded with JPEG. Similarly, while spatial
resolution fax must support this mode. The
basic approach is the lossy JPEG compression [T.81] of 400 pixels per inch may be best for L*a*b* color data
[T.42]. Grayscale applications use the black-and-
white text, 200 pixel per inch is usually sufficient for a L* lightness component; color
image.
Rather than applying one coding method and resolution to all
elements, MRC allows multiple coders
applications use the L*, a* and resolutions within b* components.
This mode uses a
page. By itself, MRC does not define any new coding methods or
resolutions. Instead it defines a 3-layer model for structuring
and combining PhotometricInterpretation field value to describe
the scanned image data.
The ITU MRC document is currently a draft. However, its technical
content is stable, and editorial changes only are permitted
between now and its scheduled approval L*a*b* encoding specified in October 1997. Upon
approval, [T.42]. This encoding differs in two
ways from the MRC document will become ITU-T Recommendation T.44.
6.1.1. MRC 3-layer model
The 3 layers of other L*a*b* encodings used in TIFF [TIFF, TTN1]: it
specifies a different default range for the MRC model are Foreground and Background, which
are both multi-level, a* and Mask, which is bi-level. Each layer may
appear only once b* components, based
on a page and is coded independently comprehensive evaluation of existing hardcopy output, and it
optionally allows selectable range for the other
two. In our earlier example, L*, a* and b* components.
5.2. Required TIFF Fields
This section lists the black-and-white text could be required fields, in
the Mask layer, the color chart addition to those given in the Foreground layer,
Section 2.2.1, and the
color image values they must support to be compatible with
ITU-T Rec. T.42 and Annex E in ITU-T Rec. T.4.
5.2.1. Baseline Fields
ImageWidth(256). SHORT or LONG
This mode supports the Background layer. following fixed page widths: 864, 1024, 1216,
1728, 2048, 2432, 2592, 3072, 3456, 3648, 4096, 4864.
BitsPerSample(258) = 8, 12. SHORT
Count = SamplesPerPixel
The distribution of content
among layers is determined by the writer, base color fax mode requires 8 bits per sample, with 12 as an
option. 12 bits per sample is the choice of not baseline TIFF.
Compression(259) = 7. SHORT
Base color fax mode uses Baseline JPEG compression. Value 7
represents JPEG compression method, as specified in [TTN2].
PhotometricInterpretation(262) = 10. SHORT
Base color fax mode requires pixel values to be stored using the CIE
L*a*b* encoding defined in ITU-T Rec. T.42. This encoding and spatial resolution for a
layer.
The final image is obtained
indicated by using the Mask layer PhotometricInterpretation value 10, referred to select
pixels from the other two layers. When as
ITULAB. With this encoding, the Mask layer pixel minimum sample value is 1, the corresponding pixel from
mapped to 0 and the Foreground layer maximum sample value is
selected; when it mapped to (2^n - 1),
i.e. the maximum value, where n is 0, the corresponding pixel BitsPerSample value.
The conversion from the
Background layer unsigned ITULAB-encoded samples values to signed
CIE L*a*b* values is selected. Details are given in Appendix 1 of
[MRC].
McIntyre & Zilles Expires 9/20/97 [Page 26]
Internet Draft File Format determined by the Decode field; see Sec. 5.2.2
Note: PhotometricInterpretation values 8 and 9 specify encodings for Internet Fax March 20, 1997
Not all pages,
CIE L*a*b* [TIFF] and not all parts of a page, require 3 layers. If
there is only one layer present, then that layer is the primary
image ICC L*a*b* [TTN1], but they are fixed
encodings, which use different minimum and must be page size. If there is more maximum samples than one layer, then the Mask must be one
T.42 default encoding. As currently defined, they are not able to
represent fax-encoded L*a*b* data.
McIntyre & Zilles Expires 1/30/98 [Page 22]
Internet Draft File Format for Internet Fax July 30, 1997
SamplesPerPixel(277) = 1, 3. SHORT
1: L* component only
3: L*, a*, b* components
Encoded according to PhotometricInterpretation field
XResolution(282). RATIONAL
YResolution(283). RATIONAL
The resolution of the layers, in which case it is the
primary image is expressed in pixels per resolution
unit. In pixels per inch, allowed XResolution values are: 100, 200,
300, and must 400. The base color fax mode requires the pixels to be page size.
MRC
square, hence YResolution must equal XResolution.
5.2.2 Extension Fields
The JPEG compression standard allows a page for the a*b* chroma components of
an image to be split into strips, with a variable number
of scanlines in a strip. A strip can subsampled relative to the L* lightness component. The
extension fields ChromaSubSampling and ChromaPositioning define the
subsampling. They are the same as YCbCrSubSampling and YCbCrPositioning,
which have 1, been renamed to reflect their applicability to other color
spaces.
ChromaSubSampling(530). SHORT
Count = 2 or 3 layers. A
single, stripped layer may be stored as a single, stripped image
in an IFD, e.g., all strips associated with
Specifies the Background
layer may be treated as subsampling factors for the chroma components of a single
L*a*b* image. Alternatively, each strip
associated with a layer may be stored as a separate image or IFD,
e.g., The two subfields of this field, ChromaSubsampleHoriz
and ChromaSubsampleVert, specify the Background layer can be composed horizontal and vertical
subsampling factors respectively.
SHORT 0: ChromaSubsampleHoriz = 1, 2, 4.
1: equal numbers of several images that
are offset vertically with respect to lightness and chroma samples horizontally,
2: twice as many lightness samples as chroma samples horizontally,
4: four times as many lightness samples as chroma samples
horizontally.
SHORT 1: ChromaSubsampleVert = 1, 2, 4.
1: equal numbers of lightness and chroma samples vertically,
2: twice as many lightness samples as chroma samples vertically,
4: four times as many lightness samples as chroma samples
vertically.
The default value for ChromaSubSampling is (2,2), which is the page. In this case,
there can be no overlap between images associated with a single
layer.
Furthermore,
default for chroma subsampling in color fax also requires [T.42]. T.42 supports no
chroma subsampling, i.e. ChromaSubSampling = (1,1), as an option.
ChromaPositioning(531) = 1, 2. SHORT
Specifies the spatial resolutions positioning of
Background and Foreground images chroma components relative to be integer factors of
the Mask
image resolution. For example, if the Mask Layer is 400
pixels per inch, then lightness component. See the Background layer can be 100, 200 or 400
pixels per inch.
6.1.2. A current TIFF Representation specification under
YCbCrPositioning for the MRC 3-layer model
In the TIFF representation of the 3-layer MRC model, each page is
represented by a single IFD, called the Primary IFD, that
represents the Mask layer (unless the Foreground or
Background further information.
1: centered,
2: cosited.
Default = 1, which is what ITU-T T.4, Annex E specifies.
McIntyre & Zilles Expires 1/30/98 [Page 23]
Internet Draft File Format for Internet Fax July 30, 1997
Decode(TagToBeAssigned). SHORT
Count = 2 * SamplesPerPixel
Describes how to map image sample values into the single layer present), and a set range of child IFDs
that are referenced through values
appropriate for the SubIFDs extension field. The
structure of SubIFDs is described in [TTN1]. To distinguish MRC-
specific SubIFDs from other SubIFDs, current color space. In general, the NewSubFileType field will
have Bit 4 ON, indicating an MRC-related IFD. A new ImageLayer
field is also introduced that consists of two values which
identify are
taken in pairs and specify the layer (Foreground, Background, or Mask) minimum and maximum output value for
each color component. For the order
within base color fax mode, Decode maps from
the layer (first, second, ... image ITULAB encoding to L*a*b* and has a count of 6 values. In this
case, the layer); see
Section 6.2.3.
Because MRC allows strips with variable numbers of scanlines, input is an unsigned ITULAB-encoded value and the output
is a
new StripRowCounts field signed L*a*b* value.
L* = Decode[0] + Lsample x (Decode[1]-Decode[0])/(2^n -1)
a* = Decode[2] + asample x (Decode[3]-Decode[2])/(2^n -1)
b* = Decode[4] + bsample x (Decode[5]-Decode[4])/(2^n -1)
where Decode[0] is introduced to replace the RowsPerStrip minimum value for L*, Decode[1] is the
maximum value, etc. and n is the BitsPerSample field value, either 8
or 12. ITU-T Rec. T.42 specifies the ITULAB encoding in this mode. The StripRowCounts field allows each layer,
with a variable number terms of scanlines in a
range and offset for each strip, component, which are related to be
represented by a single IFD. Alternatively, each strip in the
Foreground and Background layers can be represented by a single
IFD at the option of Decode
field values as follows:
Decode[0] = - (Lrange x Loffset) / 2^n
Decode[1] = Decode[0] + Lrange
NOTE: The following table gives the writer. In all cases, default range and offsets, as
specified in ITU-T Rec. T.42, and the Mask layer corresponding minimum and maximum
L*a*b* component and ITULAB encoded values.
+-----------------------------------------------------------+
| Component | Rec. T.42 | L*a*b* | ITULAB |
| | defaults | values | encoding |
+-----------+------------------+------------+---------------+
| | Range | Offset | Min | Max | Min | Max |
+-----------+--------+---------+------+-----+-----+---------+
| L* | 100 | 0 | 0 | 100 | 0 | 2^n - 1 |
+-----------+--------+---------+------+-----+-----+---------+
| a* | 170 | 128 | -85 | 85 | 0 | 2^n - 1 |
+-----------+--------+---------+------+-----+-----+---------+
| b* | 200 | 96 | -75 | 125 | 0 | 2^n - 1 |
+-----------+--------+---------+------+-----+-----+---------+
The default value for Decode is
required to be represented by a single IFD. (0, 100, -85, 85, -75, 125), which is
based on the ITULAB encoding, with PhotometricInterpretation 10,
SamplesPerPixel 3, and BitsPerSample 8.
5.2.3. New Fields
None.
5.3. Recommended TIFF Fields
See Sections 2.2.3. and 2.2.4.
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 27] 24]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
The use of SubIFDs to store child IFDs is described in [TTN1]. An
example is
5.4 Base Color Fax Mode Summary
Recommended fields are shown graphically below. The Primary IFD associated
with page 1 (PrimaryIFD 0) points to page 2 (PrimaryIFD 1) with an asterisk *
+---------------------------+--------------------------------+
| Baseline Fields | Values |
+---------------------------+--------------------------------+
| BitsPerSample | 8: 8 bits per color sample |
| | 12: optional 12 bits/sample |
+---------------------------+--------------------------------+
| Compression | 7: JPEG |
+---------------------------+--------------------------------+
| DateTime* | {ASCII}: date/time in the nextIFD offset. The Primary IFD, corresponding to the Mask
layer (ImageLayer=[2,1]), contains a SubIFDs field that points to
a list of child IFDs. The first child IFD represents one image of
the Background layer, i.e., ImageLayer=[1,1]. This child IFD
points to the second child IFD via the nextIFD offset. This child
represents the second Background layer image, ImageLayer=[1,2].
Finally, the second child points to the third child, which
corresponds to the single Foreground layer image,
ImageLayer=[3,1]. The next IFD offset associated with this
Foreground image is 0, indicating no more child IFDs exist. Each
primary IFD has the NewSubFileType set to 18, indicating |
| | 24-hour format |
| | "YYYY:MM:DD HH:MM:SS" |
+---------------------------+--------------------------------+
| ImageDescription* | {ASCII}: A string describing |
| | the IFD
is MRC-specific (bit 4) and that it is a single page contents of a multi-
page document (bit 1). Each child IFD has the NewSubFileType set
to 16, indicating the IFD is MRC-specific. Note: the 'V'
character should be read as a down-pointing arrow.
(nextIFD)
PRIMARY IFD 0 ------------> PRIMARY IFD 1--> ...
ImageLayer = [2,1]
NewSubFileType = 18
SubIFDs image. |
V
Child IFD
ImageLayer = [1,1]
NewSubFileType = 16
+---------------------------+--------------------------------+
|
|(nextIFD) ImageWidth |
V
Child IFD
ImageLayer = [1,2]
NewSubFileType = 16 864, 1024, 1216, 1728, 2048, |
|(nextIFD)
|
V
Child IFD
ImageLayer = [3,1]
NewSubFileType = 16 |
|(nextIFD) 2432, 2592, 3072, 3456, 3648, |
V
0
| | 4096, 4864 |
+---------------------------+--------------------------------+
| ImageLength | n: total number of scanlines |
| | in image |
+---------------------------+--------------------------------+
| NewSubFileType | 2: Bit 1 identifies single page|
| | of a multi-page document |
+---------------------------+--------------------------------+
| Orientation* | 1-8, Default 1 |
+---------------------------+--------------------------------+
| PhotometricInterpretation | 10: ITULAB |
+---------------------------+--------------------------------+
| ResolutionUnit | 2: inch |
| | 3: centimeter |
+---------------------------+--------------------------------+
| RowsPerStrip | n: number of scanlines per |
| | TIFF strip |
+---------------------------+--------------------------------+
| SamplesPerPixel | 1: L* (lightness) |
| | 3: LAB |
+---------------------------+--------------------------------+
| Software* | {ASCII}: name & release number |
| | of creator software |
+---------------------------+--------------------------------+
| StripByteCounts | <n>: number or bytes in |
| | TIFF strip |
+---------------------------+--------------------------------+
| StripOffsets | <n>: offset from beginning |
| | of file to each TIFF strip |
+---------------------------+--------------------------------+
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 28] 25]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
In the example above, the SubIFDs field of the Primary IFD points
to the first IFD
+---------------------------+--------------------------------+
| XResolution | 100, 200, 300, 400 (written |
| | in a list of child IFDs. TIFF allows the
SubIFDs field to point pixels/inch) |
+---------------------------+--------------------------------+
| YResolution | equal to an array of IFDs, each of which can XResolution (pixels |
| | must be
the first of a list square) |
+---------------------------+--------------------------------+
| Extension Fields |
+---------------------------+--------------------------------+
| DocumentName* | {ASCII}: name of IFDs. An MRC-enabled TIFF reader must scan
all available child IFDs to locate and identify IFDs associated
with MRC layers.
In the case where the Background or Foreground layers are
described with multiple IFDs, the XPosition scanned |
| | document |
+---------------------------+--------------------------------+
| PageNumber | n,m: page number followed by |
| | total page count |
+---------------------------+--------------------------------+
| Decode | minL, maxL, mina, maxa, minb, |
| | maxb: minimum and YPosition TIFF
fields specify the offset to the upper-left corner maximum |
| | values for L*a*b* |
+---------------------------+--------------------------------+
| ChromaSubSampling | ChromaSubsampleHoriz: |
| | 1: equal numbers of the IFD with
respect to the Mask layer; see Section 6.2.2.
When there is only a single layer (Mask, Foreground, or
Background), it is stored lightness |
| | and chroma samples |
| | 2: twice as the Primary IFD.
6.2. Required TIFF Fields
This section describes the TIFF fields required to store MRC mode
fax images. Since MRC mode stores the fax data many lightness |
| | samples as a collection of
images corresponding to layers or parts chroma samples |
| | 4: four times as many |
| | lightness samples as chroma |
| | samples |
| | ChromaSubsampleVert: |
| | 1: equal numbers of layers, the compression
mechanisms, color encodings and spatial resolutions used by
previous modes apply to MRC. Therefore, the descriptions here
will typically reference the appropriate earlier section. Fields lightness |
| | and values specific to MRC mode are pointed out.
6.2.1. Baseline fields
ImageWidth. SHORT or LONG
Same page widths chroma samples |
| | 2: twice as the base color mode; see Section 4.2.1.
BitsPerSample = 1, 8, 9-16 SHORT
Compression = 2, 3, 4, 7, 9. SHORT
SamplesPerPixel = 1, 3, 4. SHORT
FillOrder = 1, 2. SHORT
PhotometricInterpretation = 0, 1, 2, 5, 10. SHORT
For Mask layer, see Section 3.2.1.
For Foreground and Background layers, see Sections 4.2.1 and
5.2.1.
ColorMap. SHORT
Count = 3 * (2**BitsPerSample)
Used when Foreground or Background layer is a palette-color
image; see Section 5.2.1.
NewSubFileType = 16, 18. LONG
For MRC fax mode, the NewSubFileType field has two bits that
are required. Bit 1 indicates a single page many lightness |
| | samples as chroma samples |
| | 4: four times as many lightness|
| | samples as chroma samples |
+---------------------------+--------------------------------+
| ChromaPositioning | 1: centered |
| | 2: cosited |
+---------------------------+--------------------------------+
| New Fields |
+---------------------------+--------------------------------+
| GlobalParametersIFD* | <IFD>: IFD containing |
| | global parameters |
+---------------------------+--------------------------------+
| ProfileType* | n: type of a multi-page
document and must be set for the Primary IFDs; bit 4 indicates data stored in |
| | TIFF file |
+---------------------------+--------------------------------+
| ITUFaxMode* | n: ITU-compatible fax mode |
+---------------------------+--------------------------------+
| CodingMethods* | n: compression algorithms |
| | used in file |
+---------------------------+--------------------------------+
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 29] 26]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
MRC imaging model as described in ITU-T Recommendation Draft
T.44 [MRC], and must be set for Primary IFDs and all
MRC-specific child IFDs.
StripRowCounts. LONG
Tag = 559 (0x022F)
Count = number of strips
The number
+---------------------------+--------------------------------+
| VersionNumber* | n: version of scanlines stored in a strip. MRC allows each ITU fax
strip to store a different number of scanlines, up to standard |
+---------------------------+--------------------------------+
| VersionYear* | byte sequence with year of |
| | ITU fax standard |
+---------------------------+--------------------------------+
6. Lossless Color Mode
6.1. Overview
This mode, defined in [T.43], uses JBIG to losslessly code three types
of color and grayscale images: one bit per color CMY, CMYK and RGB
images; a palettized (i.e. mapped) color image; and continuous tone
color and grayscale images. The last two are multi-level and use the
L*a*b* encoding specified maximum strip size, which is either 256 scanlines in [T.42].
6.1.1. Color Encoding
While under development, this mode was called T.Palette, as one of its
major additions was palette or mapped color images. Baseline TIFF only
allows RGB color maps, but ITU-T Rec. T.43 requires L*a*b* color maps,
using the page length encoding specified in scanlines, depending on the implementation.
This field replaces RowsPerStrip for IFDs ITU-T Rec. T.42. Palette color images
are expressed with variable-sized
strips. Only one indices (bits per sample) of 12 bits or less, or
optionally 13 to 16 bits.
Enabling T.43 color maps in TIFF requires the two fields, StripRowCounts extension field Indexed,
defined in [TTN1], and
RowsPerStrip, may be used the PhotometricInterpretation field value 10,
defined in an IFD.
XResolution. RATIONAL
YResolution. RATIONAL Section 5.2.1. The resolution of the following table shows how T.43 image data
is expressed in pixels per
resolution unit. In pixels per inch, allowed XResolution
values are: 100, 200, 300, and 400. MRC color fax mode
requires interpreted, using the pixels to be square, hence YResolution must equal
XResolution.
6.2.2. Extension fields
ChromaSubSampling. SHORT
ChromaPositioning. SHORT
Decode. SHORT
For Foreground and Background layers, see Section 4.2.2.
Indexed = 0, 1. SHORT
For Foreground and Background layers: 1 indicates a palette-
color image, see Section 5.2.2.
T4Options = 0, 1, 4, 5. SHORT
T6Options = 0. SHORT
For Mask layer, see Section 3.2.2.
DefaultImageColor. SHORT or LONG
Count = SamplesPerPixel
In areas where no image data is available, a default color is
needed to specify the color value. If the
StripByteCounts value for a strip is 0, then the color for
that strip must be defined by a default image color.
The DefaultImageColor field uses the same encoding as the
image data, and its value is therefore interpreted using the
PhotometricInterpretation, SamplesPerPixel, BitsPerSample, PhotometricInterpretation, SamplesPerPixel,
BitsPerSample and Indexed fields. If the fax data stream requires a different
+----------------------------------------------------------+
| Image Type | PhotoInter- | Samples | Bits Per | Indexed |
| | pretation | PerPixel | Sample | |
|------------+-------------+----------+----------+---------|
| RGB | 2=RGB | 3 | 1 | 0 |
+----------------------------------------------------------+
| CMY | 5=CMYK | 3 | 1 | 0 |
+------------+-------------+----------+----------+---------+
| CMYK | 5=CMYK | 4 | 1 | 0 |
+------------+-------------+----------+----------+---------+
| Palette | 10=ITULAB | 1 | n | 1 |
+------------+-------------+----------+----------+---------+
| Grayscale | 10=ITULAB | 1 | 8, 12 | 0 |
+------------+-------------+----------+----------+---------+
| Color | 10=ITULAB | 3 | 8, 12 | 0 |
+------------+-------------+----------+----------+---------+
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 30] 27]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
encoding, then transferring the default color value between a
TIFF file and fax data stream requires a color conversion.
The default value for the DefaultImageColor field is white.
XPosition. RATIONAL
YPosition. RATIONAL
Specifies the horizontal and vertical offsets of
6.1.2. JBIG Encoding
T.43 uses the top-left single-progression sequential mode of the IFD from the top-left of the Primary IFD JBIG, defined in page
resolution units. For example, if
ITU-T Rec. T.82, in accordance with the Primary IFD application rules described in
ITU-T Rec. T.85. To code multi-level images using JBIG, which is at 400
pixels per inch, and a foreground layer IFD
bi-level compression method, an image is at 200 pixels
per inch resolved into a set of
bit-planes using Gray code conversion, and located at pixel coordinate (345, 678) with
respect to the Primary IFD, each bit-plane is then JBIG
compressed. The Gray code conversion is part of the XPosition value data stream
encoding, and is 345/400 therefore invisible to TIFF.
6.2. Required TIFF Fields
This section lists the required fields, in addition to those in Section
2.2.1, and the YPosition value is 678/400.
Color fax does not currently allow overlap of any component
images within a single layer.
Default values for XPosition and YPosition are 0.
6.2.3. New fields
MRC Color fax mode requires one new field: ImageLayer.
ImageLayer. they must have to be compatible with ITU-T Rec.
T.43.
6.2.1. Baseline Fields
ImageWidth(256). SHORT or LONG.
Count LONG
Same page widths as the base color mode; see Section 5.2.1.
BitsPerSample(258) = 2
Tag 1, 8, 9-16. SHORT
Count = 0x87ac
Image layers are defined such that layer SamplesPerPixel
RGB, CMY, CMYK: 1 bit per sample
Continuous tone (L*a*b*): 8 bits per sample, 12 bits optional
Palette color: 12 or fewer bits per sample, 13-16 bits optional
Note: More than 8 bits per sample is the Background
layer, layer not baseline TIFF.
ColorMap(320). SHORT
Count = 3 is * (2**BitsPerSample)
Lossless color fax mode supports palette-color (indexed) images
where the Foreground layer, and layer 2 is the
Mask layer that selects pixels from the Background and
Foreground layers. The ImageLayer tag contains two values,
describing the layer to which the image belongs and the order
in which it is imaged.
ImageLayer[0]: 1, 2, 3.
1: Image single component value is used as an index into a Background image, i.e., full
color lookup table stored in the image that will
appear whenever ColorMap field. With lossless color
fax mode, only the Mask contains a value of 0.
Background images typically contain low-resolution,
continuous-tone imagery.
2: Image ITULAB encoding with 8 bits per sample is
supported for palette-color images. To utilize a color map, the Mask layer. In MRC, if the Mask layer is
present, it TIFF
Indexed field must be present. TIFF orders the Primary IFD and be full page in
extent (no gaps.)
3: Image is a Foreground image, i.e., the image color map values so
that will
appear whenever all the Mask contains L* values come first, followed by all the a* values and
then all the b* values. Because ITU-T Rec. T.43 specifies a value of 1. The
Foreground image generally defines "chunky"
ordering with the color L*a*b*components of text or
lines, but may also contain high-resolution imagery.
McIntyre & Zilles Expires 9/20/97 [Page 31]
Internet Draft File Format for Internet Fax March 20, 1997
ImageLayer[1]:
1: first image to be imaged in this layer (e.g., the first fax
strip),
2: second image to be imaged in this layer (e.g., value, followed by
those of the second value, and so on, transferring color map values
between a TIFF file and fax
strip),
3: ...
Value describing the image order. In MRC, this
may be considered the strip number. Since MRC mode currently
does not allow overlap between images within a layer, the
order value does not have any visual effect.
In MRC fax mode, it data stream requires reordering values.
Compression(259) = 9. SHORT
9: ITU-T Rec. T.82 coding, applying ITU-T Rec. T.85 (JBIG)
FillOrder(266) = 1, 2. SHORT
This field is possible that only relevant for 1 bit per sample color (RGB, CMY,
CMYK); see Section 3.2.1 for further information.
PhotometricInterpretation(262) = 2, 5, 10. SHORT
2: RGB
5: CMYK, including CMY
McIntyre & Zilles Expires 1/30/98 [Page 28]
Internet Draft File Format for Internet Fax July 30, 1997
10: ITULAB
Image data may also be stored as palette color images, where pixel
values are represented by a single layer component that is
transmitted. For example, if a page contains only an index into a single
continuous-tone photograph, then only the Background layer may be
transmitted. In this case,
color map using the Background layer will be full page
and stored as ITULAB encoding. This color map is specified by
the Primary IFD. ImageLayer[0] will be 1 indicating
Background; ImageLayer[1] will be 1 since ColorMap field. To use palette color images, set the layer must be full
page and there can be no other IFDs associated with that layer.
No Mask layer will exist.
6.3. Recommended TIFF fields
See Sections 2.2.2. and 2.2.3.
6.4. Rules
PhotometricInterpretation to 10,SamplesPerPixel to 1, and Requirements for Images Indexed to
1. The MRC mode defines a fundamental set of rules for images color map is stored in the
3-layer representation.
1. If more than one layer exists, then ColorMap field. See Section 6.1.1
for further discussion on the binary Mask layer
must be present color encoding.
SamplesPerPixel(277) = 1, 3, 4. SHORT
1: Palette color image, or L*-only if Indexed = 0 and it
PhotometricInterpretation is the primary image. If only one
layer exists, then the image corresponding to that layer 10 (ITULAB).
3: RGB, or L*a*b*, or CMY if PhotometricInterpretation is the primary image.
2. 5 (CMYK).
4: CMYK.
XResolution(282). RATIONAL
YResolution(283). RATIONAL
The Primary image defines and extends to the entire page
boundary; all attached model images cannot extend beyond resolution of the Primary image. Resolution differences may cause some image is expressed in pixels to "hang over" the page boundary, but no new per resolution
unit. In pixels
should exist completely beyond the page extent
3. The Background per inch, allowed XResolution values are: 100, 200,
300, and Foreground images may use any 400. The lossless color
encoding defined in Sections 4 and 5, and may optionally
cover only a portion of the region defined by the Primary
image, unless one of them is fax mode requires the primary image.
4. Each Primary IFD and each MRC-specific SubIFD must have
an ImageLayer field pixels to specify which layer the IFD belongs
to, and the imaging order of that IFD within the layer.
5. Each Primary IFD be
square, hence YResolution must have equal XResolution.
6.2.2. Extension Fields
Indexed(364) = 0, 1. SHORT
0: not a NewSubFileType palette-color image
1: palette-color image
This field value
set is used to 18, indicating a single page indicate that the sample values are an index
into an array of a multi-page
document (bit 1) and MRC mode (bit 4).
McIntyre & Zilles Expires 9/20/97 [Page 32]
Internet Draft File Format for Internet Fax March 20, 1997
6. Each MRC-specific child IFD must have a NewSubFileType
field value set to 16, indicating MRC mode (bit 4).
7. In MRC mode, each layer is transmitted as a sequence of
strips. It is possible that each strip of each layer can
be stored as a separate IFD. In this case, the SubIFDs
structure pointed to by the Primary IFD will contain
several IFDs that have an ImageLayer field with the layer
identified as either Background (layer 1) or Foreground
(layer 3). There may be no overlap color values specified in the vertical
direction between IFDs associated with a single layer,
although there may be a gap from one of these images to
the next. The TIFF XPosition and YPosition fields are
used to indicate the placement of these ColorMap field.
Lossless color fax mode supports palette-color images with
respect to the primary image.
8.
ITULAB encoding. The resolution of Background and Foreground images SamplesPerPixel value must each be an integer factor of the Primary image. For
example, if the Primary image 1.
Decode(TagToBeAssigned) SHORT
Decode is 400 pixels/inch, then used in connection with the
model images may be at 400 pixels/inch (400 / 1), 200
pixels/inch (400 / 2), 100 pixels/inch (400 / 4), etc.
6.5. MRC ITULAB encoding of image data;
see Section 5.2.2.
6.2.3. New Fields
None.
6.3. Recommended TIFF Fields
See Sections 2.2.3. and 2.2.4.
6.4. Lossless Color Fax Mode Summary
Recommended fields are shown with an asterisk *
+------------------+-----------------------------------------+
| Baseline Fields | Values |
|------------------|-----------------------------------------|
| BitsPerSample | 1: binary mask |
McIntyre & Zilles Expires 1/30/98 [Page 29]
Internet Draft File Format for Internet Fax July 30, 1997
+--------------------|--------------------------------------+
| Baseline Fields | Values |
+--------------------+--------------------------------------+
| BitsPerSample | 1: Binary RGB, CMY(K) |
| | 8: 8 bits per color sample |
| | 9-16: optional 12 bits/sample |
+------------------+-----------------------------------------+
+--------------------+--------------------------------------+
| ColorMap | n: LAB color map |
+------------------+-----------------------------------------+
+--------------------+--------------------------------------+
| Compression | 2: Modified Huffman |
| | 3: Modified Read |
| | 4: Modified Modified Read |
| | 7: JPEG |
| | 9: JBIG |
+------------------+-----------------------------------------+
+--------------------+--------------------------------------+
| DateTime* | {ASCII): {ASCII}: date/time in the 24-hour format| |
| | format "YYYY:MM:DD HH:MM:SS" |
+------------------+-----------------------------------------|
+--------------------+--------------------------------------+
| FillOrder | Applies only to 1 bit/sample |
| | encodings |
| | 1: Most significant bit first |
| | 2: Least significant bit first |
+------------------+-----------------------------------------+
+--------------------+--------------------------------------+
| ImageDescription* | ImageDescription*| {ASCII}: A string describing the |
| | contents of the image. |
+------------------+-----------------------------------------+
McIntyre & Zilles Expires 9/20/97 [Page 33]
Internet Draft File Format for Internet Fax March 20, 1997
+------------------+-----------------------------------------+
+--------------------+--------------------------------------+
| ImageWidth | 864, 1024, 1216, 1728, 2048, 2432, 2592,| |
| | 2592, 3072, 3456, 3648, 4096, 4864 |
+------------------+-----------------------------------------+
+--------------------+--------------------------------------+
| ImageLength | n: total number of scanlines in image |
+------------------+-----------------------------------------| image|
+--------------------+--------------------------------------+
| NewSubFileType | 16, 18: |
| | 2: Bit 1 indicates identifies single page of a multi- |
| | page multi-page document on Primary IFD |
| | Bit 4 indicates MRC model |
+------------------+-----------------------------------------+
+--------------------+--------------------------------------+
| Orientation* | 1-8, Default 1 |
+------------------+-----------------------------------------+
| PhotometricInter | 0: WhiteIsZero |
| pretation | 1: BlackIsZero |
+--------------------+--------------------------------------+
| PhotometricInter- | 2: RGB |
| pretation | 5: CMYK |
| | 10: ITULAB |
+------------------+-----------------------------------------+
+--------------------+--------------------------------------+
| ResolutionUnit | 2: inch |
| | 3: centimeter |
+------------------+-----------------------------------------+
+--------------------+--------------------------------------+
| RowsPerStrip | n: number of scanlines in each strip |
+------------------+-----------------------------------------+ per TIFF strip|
+--------------------+--------------------------------------+
| SamplesPerPixel | 1: L* (lightness) |
| | 3: RGB, LAB, RGB, CMY |
| | 4: CMYK |
+------------------+-----------------------------------------+
+--------------------+--------------------------------------+
| Software* | {ASCII}: name & release number of |
| | creator software |
+------------------+-----------------------------------------+
+--------------------+--------------------------------------+
| StripByteCounts | <n>: number or bytes in TIFF strip |
+------------------+-----------------------------------------+
+--------------------+--------------------------------------+
| StripOffsets | <n>: offset from beginning of file to | to|
| | each TIFF strip |
+------------------+-----------------------------------------|
+--------------------+--------------------------------------+
McIntyre & Zilles Expires 1/30/98 [Page 30]
Internet Draft File Format for Internet Fax July 30, 1997
+--------------------+--------------------------------------+
| XResolution | 100, 200, 300, 400 (written in |
| | pixels/inch) |
+------------------+-----------------------------------------|
| YResolution | equal to XResolution (pixels must be |
| | square) |
+------------------+-----------------------------------------+
+--------------------+--------------------------------------+
| Extension Fields |
+------------------+-----------------------------------------+
+--------------------+--------------------------------------+
| T4Options Decode | 0: required if Compression is minL, maxL, mina, maxa, minb, maxb: |
| |minimum and maximum values for L*a*b* | Modified Huffman, no fill bits
+--------------------+--------------------------------------+
| DocumentName* | {ASCII}: name of scanned document | 1: required if Compression is 2D
+--------------------+--------------------------------------+
| PageNumber | n,m: page number followed by total | Modified Read, no fill bits
|
McIntyre & Zilles Expires 9/20/97 [Page 34]
Internet Draft File Format for Internet Fax March 20, 1997
| | 4: required if Compression is Modified |
| | Huffman, fill bits |
| | 5: required if Compression is 2D |
| | Modified Read, fill bits |
+------------------+-----------------------------------------+
| T6Options | 0: required if Compression is 2D |
| | Modified Modified Read |
+------------------+-----------------------------------------+
| DocumentName* | {ASCII}: name of scanned document |
+------------------+-----------------------------------------+
| PageNumber | n,m: page number followed by total page |
| | count |
+------------------+-----------------------------------------+
| Decode | minL, maxL, mina, maxa, minb, maxb: |
| | minimum and maximum values for CIELAB |
+------------------+-----------------------------------------+
| ChromaSubSampling| ChromaSubsampleHoriz: |
+--------------------+--------------------------------------+
| Indexed | 0: equal numbers of lightness and chroma|
| | samples not a palette-color image |
| | 1: twice as many lightness samples as |
| | chroma samples | palette-color image |
+--------------------+--------------------------------------+
| 2: four times as many lightness samples New Fields |
+--------------------+--------------------------------------|
| GlobalParameters | as chroma samples <IFD>: global parameters IFD |
| IFD* | ChromaSubsampleVert: |
+--------------------+--------------------------------------+
| ProfileType* | 0: equal numbers n: type of lightness and chroma|
| | samples |
| | 1: twice as many lightness samples as data stored in TIFF file |
+--------------------+--------------------------------------+
| ITUFaxMode* | chroma samples n: ITU-compatible fax mode |
+--------------------+--------------------------------------+
| CodingMethods* | 2: four times as many lightness samples n:compression algorithms used in |
| | as chroma samples file |
+------------------+-----------------------------------------+
+--------------------+--------------------------------------+
| ChromaPositioning| 1: centered VersionNumber* | n: version of ITU fax standard |
+--------------------+--------------------------------------+
| 2: cosited VersionYear* |
+------------------+-----------------------------------------+ byte sequence with year of ITU fax | DefaultImageColor| <n>: background color
|
+------------------+-----------------------------------------+ | Indexed standard | 0: not
+--------------------+--------------------------------------+
7. Mixed Raster Content Mode
7.1. Overview
Unlike previous fax modes, which use a palette-color image |
| | 1: palette-color image |
+------------------+-----------------------------------------+
| SubIFDs | <IFD>: byte offset to fg/bg IFDs |
+------------------+-----------------------------------------+
| XPosition | horizontal offset in primary IFD |
| | coordinates |
+------------------+-----------------------------------------+
| YPosition | vertical offset in primary IFD |
| | coordinates |
+------------------+-----------------------------------------+ single coding method and spatial
resolution for an entire fax page, the Mixed Raster Content mode [MRC]
enables different coding methods and resolutions within a single page.
For example, consider a page that contains black-and-white text, which
is best coded with MMR or JBIG, a color bar chart, best coded with JBIG,
and a scanned color image, best coded with JPEG. Similarly, while
spatial resolution of 400 pixels per inch may be best for the black-and-
white text, 200 pixel per inch is usually sufficient for a color image.
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 35] 31]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
+------------------+-----------------------------------------+
| New Fields |
+------------------+-----------------------------------------+
| ImageLayer | n, m: layer number, imaging sequence |
| | (e.g., strip number) |
+------------------+-----------------------------------------+
| GlobalParameters | <IFD>: global parameters IFD |
| IFD* | |
+------------------+-----------------------------------------+
| ProfileType* | n: type of data stored in TIFF file |
+------------------+-----------------------------------------+
| ITUFaxMode* | n: ITU-compatible fax mode |
+------------------+-----------------------------------------+
| CodingMethods* | n: compression algorithms used in file |
+------------------+-----------------------------------------+
| VersionNumber* | n: version of ITU fax standard |
+------------------+-----------------------------------------+
| VersionYear* | byte sequence with year of ITU fax |
| | standard |
+------------------+-----------------------------------------+
7. MIME sub-type
The draft proposes to redefine the image/tiff sub-type to
correspond
Rather than applying one coding method and resolution to the current TIFF specification, Revision 6.0, dated
June 3, 1992, with the addition of the all elements,
MRC allows multiple coders and resolutions within a page. By itself, MRC
does not define any new fields defined here.
Further, an optional application parameter is proposed that would
distinguish subsets of coding methods or resolutions. Instead it
defines a 3-layer model for structuring and combining the image/tiff subtype.
8. IANA Registration
To: ietf-types@iana.org
Subject: Registration of Standard MIME media type image/tiff
MIME media type name: scanned image
MIME subtype name: tiff
Required parameters: none
Optional parameters: application
data.
The value of ITU MRC document is currently a draft. However, its technical
content is stable, and editorial changes only are permitted between now
and its scheduled approval in October 1997. Upon approval, the application parameter MRC
document will become ITU-T Recommendation T.44.
7.1.1. MRC 3-layer model
The 3 layers of image/tiff the MRC model are Foreground and Background, which are
both multi-level, and Mask, which is
denoted by a single letter or bi-level. Each layer may appear
only once on a pair page and is coded independently of letters. Three
applications are proposed.
McIntyre & Zilles Expires 9/20/97 [Page 36]
Internet Draft File Format for Internet Fax March 20, 1997
B - multi-page bi-level monochrome images [RFC1314].
F - the current reference for other two. In our
earlier example, the image/tiff subtype
[RFC1528], with adds from work black-and-white text could be in progress [TIFF-F]
FX - this specification, with ITU-fax-compatible parameter
values
There is no default value for application, the Mask layer,
the color chart in the Foreground layer, and the color image in the absence
Background layer. The distribution of content among layers is determined
by the application parameter, writer, as is the user should assume baseline
TIFF.
Encoding considerations: binary or base64 generally preferred
Security considerations: The security issues associated with this
type have not been assessed.
Interoperability considerations: image/tiff, class=FX is intended
for interoperability between ITU choice of compression method, color encoding
and Internet fax data
formats.
Published specification: TIFF Revision 6.0 spatial resolution for a layer.
The final image is available at:
ftp://ftp.adobe.com/pub/adobe/devrelations/devtechnotes/
pdffiles/tiff6.pdf
Person & e-mail address obtained by using the Mask layer to contact for further information:
Lloyd McIntyre <lmcintyre@adoc.xerox.com>
Steve Zilles <szilles@adobe.com>
Intended usage: Common
9. Security Considerations
Security issues have not been assessed select pixels
from the other two layers. When the Mask layer pixel value is 1, the
corresponding pixel from the Foreground layer is selected; when it is 0,
the corresponding pixel from the Background layer is selected. Details
are given in this document.
10. References
[MRC] TD1018, "Revision Appendix 1 of D25, forming [MRC].
Not all pages, and not all parts of a page, require 3 layers. If there
is only one layer present, then that layer is the basis for Draft Rec.
T.44 (MRC-Colour)", ITU-T Study Group 8, February 1997
currently available at http://www.xerox.com/xis/mrc/
[RFC1314] Katz, A., primary image and Cohen, D., "A File Format for must
be page size. If there is more than one layer, then the
Exchange Mask must be one
of Images the layers, in which case it is the Internet", RFC 1314, USC Information
Sciences Institute, April 1992
McIntyre & Zilles Expires 9/20/97 [Page 37]
Internet Draft File Format for Internet Fax March 20, 1997
[RFC1528] Malamud, C., primary image and Rose, M., Principles of Operation for
the TPC.INT Subdomain: Remote Printing -- Technical
Procedures, RFC 1528, October 1993; also Rose, M.,
Registration of new MIME content-type/subtype, July 31, 1993,
ftp://ftp.isi.edu/in-notes/iana/assignments/media-
types/image/tiff
[T.4] ITU-T Recommendation T.4, Standardization must be page
size.
MRC allows a page to be split into strips, with a variable number of group
scanlines in a strip. A strip can have 1, 2 or 3
facsimile apparatus for document transmission, July 1996
[T.6] ITU-T Recommendation T.6, Facsimile coding schemes and
coding control functions for group 4 facsimile apparatus,
November 1988
[T.42] ITU-T Recommendation T.42, Continuous-tone colour
representation method for facsimile, February 1996
[T.43] ITU-T Draft Recommendation T.43, T.Palette-Colour - Colour
and gray-scale layers. A single,
stripped layer may be stored as a single, stripped image representations using lossless coding
scheme for facsimile, February 1997
[T.81] ITU-T Recommendation T.81, Information technology -
Digital compression and coding in an IFD,
e.g., all strips associated with the Background layer may be treated as
a single image. Alternatively, each strip associated with a layer may be
stored as a separate image or IFD, e.g., the Background layer can be
composed of continuous-tone still several images
- Requirements and guidelines, September 1992
[T.82] ITU-T Recommendation T.82, Information technology - Coded
representation that are offset vertically with respect to
the page. In this case, there can be no overlap between images
associated with a single layer.
Furthermore, color fax also requires the spatial resolutions of picture
Background and audio information - Progressive
bi-level image compression, March 1995
[T.85] ITU-T Recommendation T.85, Application profile for
Recommendation T.82 - Progressive bi-level Foreground images to be integer factors of the Mask image compression
(JBIG coding scheme) for facsimile apparatus, August 1995
[TIFF] Tag Image File Format, Revision 6.0, Adobe Developers
Association, June 3, 1992
[TIFF-F] work in progress, Tag Image File Format (TIFF) - Class
F, Jan. 1997, ftp://ftp.ietf.org/internet-drafts/draft-ietf-
fax-tiff-00.txt
[TTN1] Adobe PageMaker 6.0 TIFF Technical Notes, Sept. 14, 1995,
http://www.adobe.com/supportservice/devrelations/PDFS/TN/
TIFFPM6.pdf
[TTN2] Draft TIFF Technical Note 2, Replacement TIFF/JPEG
specification, March 17, 1995, ftp://ftp.sgi.com/graphics/
tiff/TTN2.draft.txt
resolution. For example, if the Mask Layer is 400 pixels per inch, then
the Background layer can be 100, 200 or 400 pixels per inch.
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 38] 32]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
T.4, T.6, T.42, T.81, T.82 and T.85 are available at
http://www.itu.ch.
[MRC] is currently available at http://www.xerox.com/xis/mrc/
11. Authors' Addresses
Lloyd McIntyre
Xerox Corporation
Mailstop PAHV-305
3400 Hillview Ave.
Palo Alto, CA 94304
USA
Voice: +1-415-813-6762
Fax: +1-415-813-6792
Email: lmcintyre@adoc.xerox.com
Stephen Zilles
Adobe Systems Inc.
Mailstop W14
345 Park Avenue
San Jose, CA 95110-2704
Voice: +1-408-536-4766
Fax: +1-408-536-4042
Email: szilles@adobe.com
Annex A: Summary of
7.1.2. A TIFF Fields Representation for Internet Fax
This annex includes tables which list all relevant TIFF fields
used in the proposed fax file format. The fields are organized
into 3 categories:
1) TIFF Baseline fields
2) MRC 3-layer model
In the TIFF Extension fields
3) New Fields.
The tables include representation of the allowed values relevant to 3-layer MRC model, each Fax mode.
Entries other than explicit numbers are described by:
n - page is
represented by a single number
n, m - 2 numbers
a, b, c - 3 numbers
r - rational number
<n> - array IFD, called the Primary IFD, that represents the
Mask layer (unless the Foreground or Background is the single layer
present), and a set of numbers
<b> - byte sequence
{ASCII} - string
<IFD> - array of IFD byte offsets
McIntyre & Zilles Expires 9/20/97 [Page 39]
Internet Draft File Format for Internet Fax March 20, 1997 child IFDs that are referenced through the
SubIFDs extension field. The absence structure of SubIFDs is described in
[TTN1]. To distinguish MRC-specific SubIFDs from other SubIFDs, the
NewSubFileType field will have Bit 4 ON, indicating an entry indicates MRC-related IFD.
A new ImageLayer field is also introduced that consists of two values
which identify the layer (Foreground, Background, or Mask) and the order
within the layer (first, second, ... image of the layer); see Section
7.2.3.
Because MRC allows strips with variable numbers of scanlines, a new
StripRowCounts field is not part introduced to replace the RowsPerStrip field in
this mode. The StripRowCounts field allows each layer, with a variable
number of scanlines in each strip, to be represented by a single IFD.
Alternatively, each strip in the
current proposal.
Table A.1 TIFF Baseline Fields
+----------+-------------------------------------------------+
| | Fax Modes |
+----------+-------------------------------------------------|
| Field | Bi-level | Color | Color | Mixed Raster|
| | | (Lossy) | (Lossless) | Content |
+----------+-----------+----------+------------+-------------+
| BitsPer | | | | |
| Sample | Foreground and Background layers can be
represented by a single IFD at the option of the writer. In all cases,
the Mask layer is required to be represented by a single IFD.
The use of SubIFDs to store child IFDs is described in [TTN1]. An
example is shown graphically below. The Primary IFD associated with page
1 (PrimaryIFD 0) points to page 2 (PrimaryIFD 1) with the nextIFD
offset. The Primary IFD, corresponding to the Mask layer
(ImageLayer=[2,1]), contains a SubIFDs field that points to a list of
child IFDs. The first child IFD represents one image of the Background
layer, i.e., ImageLayer=[1,1]. This child IFD points to the second child
IFD via the nextIFD offset. This child represents the second Background
layer image, ImageLayer=[1,2]. Finally, the second child points to the
third child, which corresponds to the single Foreground layer image,
ImageLayer=[3,1]. The next IFD offset associated with this Foreground
image is 0, indicating no more child IFDs exist. Each primary IFD has
the NewSubFileType set to 18, indicating the IFD is MRC-specific (bit 4)
and that it is a single page of a multi-page document (bit 1). Each
child IFD has the NewSubFileType set to 16, indicating the IFD is
MRC-specific. Note: the 'V' character should be read as a down-pointing
arrow.
(nextIFD)
PRIMARY IFD 0 ------------> PRIMARY IFD 1--> ...
ImageLayer = [2,1]
NewSubFileType = 18
SubIFDs
| 8, 12 | 1, 8, 9-16 | 1, 8, 9-16 |
+----------+-----------+----------+------------|-------------|
| ColorMap | | | <n> | <n> |
+----------+-----------+----------+------------|-------------|
| Compres- | | | | |
| sion | 2, 3, 4 | 7 | 9 |2, 3, 4, 7, 9|
+----------+-----------+----------+------------+-------------+
| DateTime | {ASCII} | {ASCII}
V
Child IFD
ImageLayer = [1,1]
McIntyre & Zilles Expires 1/30/98 [Page 33]
Internet Draft File Format for Internet Fax July 30, 1997
NewSubFileType = 16
| {ASCII} |{ASCII}
|(nextIFD)
|
+----------+-----------+--------- +------------|-------------|
V
Child IFD
ImageLayer = [1,2]
NewSubFileType = 16
| FillOrder| 1, 2
|(nextIFD)
|
V
Child IFD
ImageLayer = [3,1]
NewSubFileType = 16
| 1, 2
|(nextIFD)
| 1,
V
0
In the example above, the SubIFDs field of the Primary IFD points to the
first IFD in a list of child IFDs. TIFF allows the SubIFDs field to
point to an array of IFDs, each of which can be the first of a list of
IFDs. An MRC-enabled TIFF reader must scan all available child IFDs to
locate and identify IFDs associated with MRC layers.
In the case where the Background or Foreground layers are described with
multiple IFDs, the XPosition and YPosition TIFF fields specify the
offset to the upper-left corner of the IFD with respect to the Mask
layer; see Section 7.2.2. When there is only a single layer (Mask,
Foreground, or Background), it is stored as the Primary IFD.
7.2. Required TIFF Fields
This section describes the TIFF fields required, in addition to those in
Section 2.2.1, to store MRC mode fax images. Since MRC mode stores the
fax data as a collection of images corresponding to layers or parts of
layers, the compression mechanisms, color encodings and spatial
resolutions used by previous modes apply to MRC. Therefore, the
descriptions here will typically reference the appropriate earlier
section. Fields and values specific to MRC mode are pointed out.
7.2.1. Baseline Fields
ImageWidth(256). SHORT or LONG
Same page widths as the base color mode; see Section 5.2.1.
BitsPerSample(258) = 1, 8, 9-16 SHORT
Compression(259) = 3, 4, 7, 9. SHORT
SamplesPerPixel(277) = 1, 3, 4. SHORT
FillOrder(266) = 1, 2. SHORT
McIntyre & Zilles Expires 1/30/98 [Page 34]
Internet Draft File Format for Internet Fax July 30, 1997
PhotometricInterpretation(262) = 0, 1, 2, 5, 10. SHORT
For Mask layer, see Section 3.2.1.
For Foreground and Background layers, see Sections 5.2.1 and 6.2.1.
ColorMap(320). SHORT
Count = 3 * (2**BitsPerSample)
Used when Foreground or Background layer is a palette-color image;
see Section 6.2.1.
NewSubFileType(254) = 16, 18. LONG
For MRC fax mode, the NewSubFileType field has two bits that are
required.
Bit 1 indicates a single page of a multi-page document and must be
set for the Primary IFDs;
Bit 4 indicates MRC imaging model as described in ITU-T
Recommendation Draft T.44 [MRC], and must be set for Primary IFDs
and all MRC-specific child IFDs.
StripRowCounts(559). LONG
Count = number of strips
The number of scanlines stored in a strip. MRC allows each fax strip
to store a different number of scanlines, up to a specified maximum
strip size, which is either 256 scanlines or the page length in
scanlines, depending on the implementation. This field replaces
RowsPerStrip for IFDs with variable-sized strips. Only one of the
two fields, StripRowCounts and RowsPerStrip, may be used in an IFD.
XResolution(282). RATIONAL
YResolution(283). RATIONAL
The resolution of the image is expressed in pixels per resolution
unit. In pixels per inch, allowed XResolution values are: 100, 200,
300, and 400. MRC color fax mode requires the pixels to be square,
hence YResolution must equal XResolution.
7.2.2. Extension Fields
ChromaSubSampling(530). SHORT
ChromaPositioning(531). SHORT
Decode(TagToBeAssigned). SHORT
For Foreground and Background layers, see Section 5.2.2.
Indexed(346) = 0, 1. SHORT
For Foreground and Background layers: 1 indicates a palette-color
image, see Section 6.2.2.
T4Options(292) = 0, 1, 4, 5. SHORT
T6Options(293) = 0. SHORT
For Mask layer, see Section 4.2.2.
McIntyre & Zilles Expires 1/30/98 [Page 35]
Internet Draft File Format for Internet Fax July 30, 1997
DefaultImageColor(TagToBeAssigned). SHORT or LONG
Count = SamplesPerPixel
In areas where no image data is available, a default color is needed
to specify the color value. If the StripByteCounts value for a strip
is 0, then the color for that strip must be defined by a default
image color.
The DefaultImageColor field uses the same encoding as the image
data, and its value is therefore interpreted using the
PhotometricInterpretation, SamplesPerPixel, BitsPerSample, and
Indexed fields. If the fax data stream requires a different
encoding, then transferring the default color value between a TIFF
file and fax data stream requires a color conversion.
The default value for the DefaultImageColor field is white.
SubIFDs(330). IFD
Count = number of child IFDs
Each value is an offset from the beginning of the TIFF file to a
child IFD [TTN1].
XPosition(286). RATIONAL
YPosition(287). RATIONAL
Specifies the horizontal and vertical offsets of the top-left of the
IFD from the top-left of the Primary IFD in page resolution units.
For example, if the Primary IFD is at 400 pixels per inch, and a
foreground layer IFD is at 200 pixels per inch and located at pixel
coordinate (345, 678) with respect to the Primary IFD, the XPosition
value is 345/400 and the YPosition value is 678/400.
Color fax does not currently allow overlap of any component images
within a single layer.
Default values for XPosition and YPosition are 0.
7.2.3. New Fields
The Mixed Raster Content mode requires one new field: ImageLayer.
ImageLayer (34732). SHORT or LONG.
Count = 2
Image layers are defined such that layer 1 is the Background layer,
layer 3 is the Foreground layer, and layer 2 is the Mask layer that
selects pixels from the Background and Foreground layers. The
ImageLayer tag contains two values, describing the layer to which
the image belongs and the order in which it is imaged.
ImageLayer[0]: 1, 2, 3.
1: Image is a Background image, i.e., the image that will appear
whenever the Mask contains a value of 0. Background images
typically contain low-resolution, continuous-tone imagery.
2: Image is the Mask layer. In MRC, if the Mask layer is present, it
must be the Primary IFD and be full page in extent (no gaps.)
McIntyre & Zilles Expires 1/30/98 [Page 36]
Internet Draft File Format for Internet Fax July 30, 1997
3: Image is a Foreground image, i.e., the image that will appear
whenever the Mask contains a value of 1. The Foreground image
generally defines the color of text or lines, but may also
contain high-resolution imagery.
ImageLayer[1]:
1: first image to be imaged in this layer (e.g., first fax strip),
2: second image to be imaged in this layer (e.g., second fax strip),
3: ...
Value describing the image order. In MRC, this may be considered the
strip number. Since MRC mode currently does not allow overlap
between images within a layer, the order value does not have any
visual effect.
In MRC fax mode, it is possible that only a single layer is transmitted.
For example, if a page contains only a single continuous-tone
photograph, then only the Background layer may be transmitted. In this
case, the Background layer will be full page and stored as the Primary
IFD. ImageLayer[0] will be 1 indicating Background; ImageLayer[1] will
be 1 since the layer must be full page and there can be no other IFDs
associated with that layer. No Mask layer will exist.
7.3. Recommended TIFF Fields
See Sections 2.2.3. and 2.2.4.
7.4. Rules and Requirements for Images
The MRC mode defines a fundamental set of rules for images in the
3-layer representation.
1. If more than one layer exists, then the binary Mask layer must be
present and it is the primary image. If only one layer exists, then
the image corresponding to that layer is the primary image.
2. The Primary image defines and extends to the entire page boundary;
all attached model images cannot extend beyond the Primary image.
Resolution differences may cause some pixels to "hang over" the page
boundary, but no new pixels should exist completely beyond the page
extent
3. The Background and Foreground images may use any color encoding
defined in Sections 5 and 6, and may optionally cover only a portion
of the region defined by the Primary image, unless one of them is the
primary image.
4. Each Primary IFD and each MRC-specific SubIFD must have an ImageLayer
field to specify which layer the IFD belongs to, and the imaging
order of that IFD within the layer.
McIntyre & Zilles Expires 1/30/98 [Page 37]
Internet Draft File Format for Internet Fax July 30, 1997
5. Each Primary IFD must have a NewSubFileType field value set to 18,
indicating a single page of a multi-page document (bit 1) and MRC
mode (bit 4).
6. Each MRC-specific child IFD must have a NewSubFileType field value
set to 16, indicating MRC mode (bit 4).
7. In MRC mode, each layer is transmitted as a sequence of strips. It is
possible that each strip of each layer can be stored as a separate
IFD. In this case, the SubIFDs structure pointed to by the Primary
IFD will contain several IFDs that have an ImageLayer field with the
layer identified as either Background (layer 1) or Foreground (layer
3). There may be no overlap in the vertical direction between IFDs
associated with a single layer, although there may be a gap from one
of these images to the next. The TIFF XPosition and YPosition fields
are used to indicate the placement of these images with respect to
the primary image.
8. The resolution of Background and Foreground images must each be an
integer factor of the Primary image. For example, if the Primary
image is 400 pixels/inch, then the model images may be at 400
pixels/inch (400 / 1), 200 pixels/inch (400 / 2), 100 pixels/inch
(400 / 4), etc.
7.5. MRC Fax Mode Summary
Recommended fields are shown with an asterisk *
+------------------+-----------------------------------------+
| Baseline Fields | Values |
|------------------|-----------------------------------------|
| BitsPerSample | 1: binary mask |
| | 8: 8 bits per color sample |
| | 9-16: optional 12 bits/sample |
+------------------+-----------------------------------------+
| ColorMap | n: LAB color map |
+------------------+-----------------------------------------+
| Compression | 3: Modified Huffman and Modified Read |
| | 4: Modified Modified Read |
| | 7: JPEG |
| | 9: JBIG |
+------------------+-----------------------------------------+
| DateTime* | {ASCII): date/time in the 24-hour format|
| | "YYYY:MM:DD HH:MM:SS" |
+------------------+-----------------------------------------|
| FillOrder | Applies only to 1 bit/sample encodings |
| | 1: Most significant bit first |
| | 2: Least significant bit first |
+------------------+-----------------------------------------+
McIntyre & Zilles Expires 1/30/98 [Page 38]
Internet Draft File Format for Internet Fax July 30, 1997
+------------------+-----------------------------------------|
| ImageDescription*| {ASCII}: A string describing the |
| | contents of the image. |
+------------------+-----------------------------------------+
| ImageWidth | 864, 1024, 1216, 1728, 2048, 2432, 2592,|
| | 3072, 3456, 3648, 4096, 4864 |
+------------------+-----------------------------------------+
| ImageLength | n: total number of scanlines in image |
+------------------+-----------------------------------------|
| NewSubFileType | 16, 18: |
| | Bit 1 indicates single page of a multi- |
| | page document on Primary IFD |
| | Bit 4 indicates MRC model |
+------------------+-----------------------------------------+
| Orientation* | 1-8, Default 1 |
+------------------+-----------------------------------------+
| PhotometricInter | 0: WhiteIsZero |
| pretation | 1: BlackIsZero |
| | 2: RGB |
| | 5: CMYK |
| | 10: ITULAB |
+------------------+-----------------------------------------+
| ResolutionUnit | 2: inch |
| | 3: centimeter |
+------------------+-----------------------------------------+
| RowsPerStrip | n: number of scanlines in each strip |
+------------------+-----------------------------------------+
| SamplesPerPixel | 1: L* (lightness) |
| | 3: RGB, LAB, CMY |
| | 4: CMYK |
+------------------+-----------------------------------------+
| Software* | {ASCII}: name & release number of |
| | creator software |
+------------------+-----------------------------------------+
| StripByteCounts | <n>: number or bytes in TIFF strip |
+------------------+-----------------------------------------+
| StripOffsets | <n>: offset from beginning of file to |
| | each TIFF strip |
+------------------+-----------------------------------------|
| XResolution | 100, 200, 300, 400 (written in |
| | pixels/inch) |
+------------------+-----------------------------------------|
| YResolution | equal to XResolution (pixels must be |
| | square) |
+------------------+-----------------------------------------+
| Extension Fields |
+------------------+-----------------------------------------+
McIntyre & Zilles Expires 1/30/98 [Page 39]
Internet Draft File Format for Internet Fax July 30, 1997
+------------------+-----------------------------------------+
| T4Options | 0: required if Compression is |
| | Modified Huffman, no fill bits |
| | 1: required if Compression is 2D |
| | Modified Read, no fill bits |
| | 4: required if Compression is Modified |
| | Huffman, fill bits |
| | 5: required if Compression is 2D |
| | Modified Read, fill bits |
+------------------+-----------------------------------------+
| T6Options | 0: required if Compression is 2D |
| | Modified Modified Read |
+------------------+-----------------------------------------+
| DocumentName* | {ASCII}: name of scanned document |
+------------------+-----------------------------------------+
| PageNumber | n,m: page number followed by total page |
| | count |
+------------------+-----------------------------------------+
| Decode | minL, maxL, mina, maxa, minb, maxb: |
| | minimum and maximum values for L*a*b* |
+------------------+-----------------------------------------+
| ChromaSubSampling| ChromaSubsampleHoriz: |
| | 0: equal numbers of lightness and chroma|
| | samples |
| | 1: twice as many lightness samples as |
| | chroma samples |
| | 2: four times as many lightness samples |
| | as chroma samples |
| | ChromaSubsampleVert: |
| | 0: equal numbers of lightness and chroma|
| | samples |
| | 1: twice as many lightness samples as |
| | chroma samples |
| | 2: four times as many lightness samples |
| | as chroma samples |
+------------------+-----------------------------------------+
| ChromaPositioning| 1: centered |
| | 2: cosited |
+------------------+-----------------------------------------+
| DefaultImageColor| <n>: background color |
+------------------+-----------------------------------------+
| Indexed | 0: not a palette-color image |
| | 1: palette-color image |
+------------------+-----------------------------------------+
| SubIFDs | <IFD>: byte offset to fg/bg IFDs |
+------------------+-----------------------------------------+
| XPosition | horizontal offset in primary IFD |
| | coordinates |
+------------------+-----------------------------------------+
| YPosition | vertical offset in primary IFD |
| | coordinates |
+------------------+-----------------------------------------+
McIntyre & Zilles Expires 1/30/98 [Page 40]
Internet Draft File Format for Internet Fax July 30, 1997
+------------------+-----------------------------------------+
| New Fields |
+------------------+-----------------------------------------+
| ImageLayer | n, m: layer number, imaging sequence |
| | (e.g., strip number) |
+------------------+-----------------------------------------+
| GlobalParameters | <IFD>: global parameters IFD |
| IFD* | |
+------------------+-----------------------------------------+
| ProfileType* | n: type of data stored in TIFF file |
+------------------+-----------------------------------------+
| ITUFaxMode* | n: ITU-compatible fax mode |
+------------------+-----------------------------------------+
| CodingMethods* | n: compression algorithms used in file |
+------------------+-----------------------------------------+
| VersionNumber* | n: version of ITU fax standard |
+------------------+-----------------------------------------+
| VersionYear* | byte sequence with year of ITU fax |
| | standard |
+------------------+-----------------------------------------+
8. MIME sub-type
The draft proposes to redefine the image/tiff sub-type to correspond to
the current TIFF specification, Revision 6.0, dated June 3, 1992, with
the addition of the new fields defined here. Further, an optional
application parameter is proposed that would distinguish subsets of the
image/tiff subtype corresponding to the TIFF representation of the fax
modes defined in this document.
9. IANA Registration
To: ietf-types@iana.org
Subject: Registration of Standard
MIME media type image/tiff
MIME media type name: image
MIME subtype name: tiff
Required parameters: none
Optional parameters: application
The value of the application parameter of image/tiff is denoted by a
single letter. Six values are proposed.
McIntyre & Zilles Expires 1/30/98 [Page 41]
Internet Draft File Format for Internet Fax July 30, 1997
B - minimal black-and-white fax mode (defined in Section 3).
F - extended black-and-white fax mode (defined in Section 4,
excluding Compression=9)
J - extended black-and-white fax mode (defined in Section 4,
including Compression=9)
C - lossy color mode (defined in Section 5)
P - lossless color mode (defined in Section 6)
M - Mixed Raster Content mode (defined in Section 7)
There is no default value for application, and in the absence of the
application parameter, the user should assume baseline TIFF.
Encoding considerations: binary or base64 generally preferred
Security considerations: The security issues associated with this type
have not been assessed.
Interoperability considerations: These application parameter values for
image/tiff are intended for interoperability between ITU and Internet
fax data formats.
Published specification: TIFF Revision 6.0 is available at: ftp://
ftp.adobe.com/pub/adobe/devrelations/devtechnotes/pdffiles/tiff6.pdf,
http://www.adobe.com/supportservice/devrelations/PDFS/TN/TIFF6.pdf
Person & e-mail address to contact for further information:
Lloyd McIntyre: lmcintyre@adoc.xerox.com
Steve Zilles: szilles@adobe.com
Intended usage: Common
10. Security Considerations
Security issues have not been assessed in this document.
11. References
[MRC] TD1018, "Revision of D25, forming the basis for Draft Rec. T.44
(MRC-Colour)", ITU-T Study Group 8, February 1997 currently available at
http://www.xerox.com/xis/mrc/
[RFC1314] Katz, A., and Cohen, D., "A File Format for the Exchange of
Images in the Internet", RFC 1314, USC Information Sciences Institute,
April 1992
McIntyre & Zilles Expires 1/30/98 [Page 42]
Internet Draft File Format for Internet Fax July 30, 1997
[RFC1528] Malamud, C., and Rose, M., Principles of Operation for the
TPC.INT Subdomain: Remote Printing -- Technical Procedures, RFC 1528,
October 1993; also Rose, M., Registration of new MIME content-
type/subtype, July 31, 1993, ftp://ftp.isi.edu/in-notes/iana/
assignments/media-types/image/tiff
[T.4] ITU-T Recommendation T.4, Standardization of group 3 facsimile
apparatus for document transmission, July 1996
[T.6] ITU-T Recommendation T.6, Facsimile coding schemes and coding
control functions for group 4 facsimile apparatus, November 1988
[T.42] ITU-T Recommendation T.42, Continuous-tone colour representation
method for facsimile, February 1996
[T.43] ITU-T Recommendation T.43, Colour and gray-scale image
representations using lossless coding scheme for facsimile, February
1997
[T.81] ITU-T Recommendation T.81, Information technology - Digital
compression and coding of continuous-tone still images - Requirements
and guidelines, September 1992
[T.82] ITU-T Recommendation T.82, Information technology - Coded
representation of picture and audio information - Progressive bi-level
image compression, March 1995
[T.85] ITU-T Recommendation T.85, Application profile for Recommendation
T.82 - Progressive bi-level image compression (JBIG coding scheme) for
facsimile apparatus, August 1995
[TIFF] Tag Image File Format, Revision 6.0, Adobe Developers
Association, June 3, 1992, ftp://ftp.adobe.com/pub/adobe/devrelations/
devtechnotes/pdffiles/tiff6.pdf
[TIFF-F] work in progress, Tag Image File Format (TIFF) - Class F, May
30, 1997, ftp://ftp.ietf.org/internet-drafts/draft-ietf-fax-tiff-02.txt
[TIFF-F0] TIFF Class F specification, Apr 28, 1990,
ftp://ftp.faximum.com/pub/documents/tiff_f.txt
[TTN1] Adobe PageMaker 6.0 TIFF Technical Notes, Sept. 14, 1995,
http://www.adobe.com/supportservice/devrelations/PDFS/TN/TIFFPM6.pdf
[TTN2] Draft TIFF Technical Note 2, Replacement TIFF/JPEG specification,
March 17, 1995, ftp://ftp.sgi.com/graphics/tiff/TTN2.draft.txt
The ITU-T Recommendations are available at http://www.itu.ch.
[MRC] is currently available at http://www.xerox.com/xis/mrc/
McIntyre & Zilles Expires 1/30/98 [Page 43]
Internet Draft File Format for Internet Fax July 30, 1997
12. Authors' Addresses
Lloyd McIntyre
Xerox Corporation
Mailstop PAHV-305
3400 Hillview Ave.
Palo Alto, CA 94304 USA
Voice: +1-415-813-6762 Fax: +1-415-813-6792
Email: lmcintyre@adoc.xerox.com
Stephen Zilles
Adobe Systems Inc.
Mailstop W14
345 Park Avenue
San Jose, CA 95110-2704
Voice: +1-408-536-4766
Fax: +1-408-536-4042
Email: szilles@adobe.com
Appendix A: Summary of TIFF Fields for Internet Fax
This annex includes tables which list by mode the TIFF fields used in
the proposed fax file format. The fields are organized into 3
categories:
1) TIFF Baseline Fields
2) TIFF Extension Fields
3) New Fields.
The tables include the allowed values for each fax mode.
Entries other than explicit numbers are described by:
n - single number
n, m - 2 numbers
a, b, c - 3 numbers
r - rational number
<n> - array of numbers
<b> - byte sequence
{ASCII} - string
<IFD> - array of IFD byte offsets
A blank entry in the table indicates the field is not used by that
particular fax mode.
McIntyre & Zilles Expires 1/30/98 [Page 44]
Internet Draft File Format for Internet Fax July 30, 1997
Table A.1 TIFF Baseline Fields
+----------------------------------------------------------+
| Fax Mode |
+----------+----------------------------------------------------------|
| Field | B&W | B&W | Color | Color | Mixed Raster|
| | Minimal | Extended | Lossy | Lossless | Content |
+----------+---------------------+----------+-----------+-------------+
| BitsPer | | | | | |
| Sample | 1 | 1 | 8, 12 | 1, 8, 9-16| 1, 8, 9-16 |
+----------+---------------------+----------+-----------|-------------|
| ColorMap | | | | <n> | <n> |
+----------+---------------------+----------+-----------|-------------|
| Compres- | | | | | |
| sion | 3 | 3, 4 | 7 | 9 | 3, 4, 7, 9 |
+----------+---------------------+----------+-----------+-------------+
| DateTime | {ASCII} | {ASCII} | {ASCII} | {ASCII} |{ASCII} |
+----------+---------------------+--------- +-----------|-------------|
| FillOrder| 1, 2 | 1, 2 | | 1, 2 | 1, 2 |
+----------+---------------------+----------+-----------+-------------+
| ImageDes-| {ASCII} | {ASCII} | {ASCII} | {ASCII} | {ASCII} |
| cription | | | | | |
+----------+---------------------+----------+-----------+-------------|
| Image- | 1728, |1728, 2048 |864, 1024 |864, 1024 |864, 1024 |
| Width | 2048, |2432, 2592 |1216, 1728|1216, 1728 |1216, 1728 |
| | 2432 |3072, 3456 |2048, 2432|2048, 2432 |2048, 2432 |
| | |3648, 4096 |2592, 3072|2592, 3072 |2592, 3072 |
| | |4864 |3456, 3648|3456, 3648 |3456, 3648 |
| | | |4096, 4864|4096, 4864 |4096, 4864 |
+----------+---------------------+----------+-----------+-------------+
| Image- | | | | | |
| Length | n | n | n | n | n |
+----------+---------------------+----------+-----------+-------------+
| NewSub- | | | | | |
| FileType | 2 | 2 | 2 | 2 | 16, 18 |
+----------+---------------------+----------+-----------+-------------+
| Orien- | | | | | |
| tation | 1 | 1 | 1 |1 | 1 |
+----------+---------------------+----------+-----------+-------------+
| Photo- | | | | | |
| metric- | | | | | |
| Interp- | | | | | |
| retation | 0, 1 | 0, 1 | 10 | 2, 5, 10 | 0,1,2,5,10 |
+----------+---------------------+----------+-----------+-------------+
| Resolu- | | | | | |
| tionUnit | 2, 3 | 2, 3 | 2, 3 | 2, 3 | 2, 3 |
+----------+---------------------+----------+-----------+-------------+
| RowsPer- | | | | | |
| Strip | n | n | n | n | |
+----------+---------------------+----------+-----------+-------------+
McIntyre & Zilles Expires 1/30/98 [Page 45]
Internet Draft File Format for Internet Fax July 30, 1997
+----------+---------------------+----------+-----------+-------------+
| Samples- | | | | | |
| PerPixel | 1 | 1 | 1, 3 | 1, 3, 4 | 1, 3, 4 |
+----------+---------------------+----------+-----------+-------------+
| Software | {ASCII} | {ASCII} | {ASCII} | {ASCII} | {ASCII} |
+----------+---------------------+----------+-----------+-------------+
| Strip- | | | | | |
| Byte- | | | | | |
| Counts | <n> | <n> | <n> | <n> | <n> |
+----------+---------------------+----------+-----------+-------------+
| Strip- | | | | | |
| Offsets | <n> | <n> | <n> | <n> | <n> |
+----------+---------------------+----------+-----------+-------------+
| XResolu- | 204 | 200, 204, | 100, 200,| 100, 200, | 100, 200, |
| tion | | 300, 400, | 300, 400 | 300, 400 | 300, 400 |
| | | 406 | | | |
+----------+---------------------+----------+-----------+-------------+
| YResolu- | 98, 196 | 98, 196, | 100, 200,| 100, 200, | 100, 200, |
| tion | | 100, 200, | 300, 400 | 300, 400 | 300, 400 |
| | | 300, 392, | | | |
| | | 400 | | | |
+----------+---------------------+----------+-----------+-------------+
Table A.2 TIFF Extension Fields
+---------------------------------------------------------+
| Fax Mode |
+-----------+---------------------------------------------------------|
| Field | B&W | B&W | Color | Color |Mixed Raster|
| | Minimal| Extended | Lossy | Lossless | Content |
+-----------+--------+-----------+----------+----- ------+------------+
| T4Options | 4, 5 | 0, 1, 4, 5| | | 0, 1, 4, 5 |
+-----------+--------+-----------+----------+------------+------------+
| T6Options | | 0 | | | 0 |
+-----------+--------+-----------+----------+------------+------------+
| Document- | | | | | |
| Name | {ASCII}| {ASCII} | {ASCII} | {ASCII} | {ASCII} |
+-----------+--------+-----------+----------+------------+------------+
| Page- | | | | | |
| Number | n, m | n, m | n, m | n, m | n, m |
+-----------+--------+-----------+----------+------------+------------+
| XPosition | | | | | r |
+-----------+--------+-----------+----------+------------+------------+
| YPosition | | | | | r |
+-----------+--------+-----------+----------+------------+------------+
| SubIFDs | | | | | <IFD> |
+-----------+--------+-----------+----------+------------+------------+
| Indexed | | | | 0, 1 | 0, 1 |
+-----------+--------+-----------+----------+------------+------------+
McIntyre & Zilles Expires 1/30/98 [Page 46]
Internet Draft File Format for Internet Fax July 30, 1997
+-----------+--------+-----------+----------+------------+------------+
| Chroma- | | | | | |
| SubSampl- | | | | | |
| ing | | | n, m | | n, m |
+-----------+--------+-----------+----------+------------+------------+
| Chroma- | | | | | |
| Position- | | | | | |
| ing | | | 1, 2 |
+----------+-----------+----------+------------+-------------+ | ImageDes-| (ASCII} 1,2 |
+-----------+--------+-----------+----------+------------+------------+
| Decode | | | <n> | <n> | <n> |
+-----------+--------+-----------+----------+------------+------------+
| Default- | | | | | |
| ImageColor| | | | | <n> |
+-----------+--------+-----------+----------+------------+------------+
| Strip- | | | | | |
| RowCounts | | | | | <n> |
+-----------+--------+-----------+----------+------------+------------+
Table A.3 New Fields
+---------------------------------------------------------+
| Fax Mode |
+-----------+---------------------------------------------------------|
| Field | B&W | B&W | Color | Color |Mixed Raster|
| | Minimal| Extended | Lossy | Lossless | Content |
+-----------+--------+-----------+----------+----- ------+------------+
| BadFax- | | | | | |
| Lines | n | n | | | |
+-----------+--------+-----------+----------+------------+------------+
| CleanFax- | | | {ASCII} | {ASCII} | {ASCII} |
| cription Data | 0,1,2 | 0,1,2 | | |
+----------+-----------+----------+------------+-------------| | Image- |1728, 2048 |864, 1024 |864, 1024 |864, 1024
+-----------+--------+-----------+----------+------------+------------+
| Consecu- | Width |2432, 2592 |1216, 1728|1216, 1728 |1216, 1728 | | |3072, 3456 |2048, 2432|2048, 2432 |2048, 2432 | | |3648, 4096 |2592, 3072|2592, 3072 |2592, 3072 |
| |4864 |3456, 3648|3456, 3648 |3456, 3648 tiveBad- | | | |4096, 4864|4096, 4864 |4096, 4864 |
+----------+-----------+----------+------------+-------------+ | |
| FaxLines | n | n | | | |
+-----------+--------+-----------+----------+------------+------------+
| Image- | | | | | | Length
| n Layer | n | n | | | n, m |
+-----------+--------+-----------+----------+------------+------------+
| Global- | | | | | |
| Parame- | | | | | |
| tersIFD | | <IFD> | <IFD> | <IFD> | <IFD> |
+-----------+--------+-----------+----------+------------+------------+
| Profile- | | | | | |
| Type | | n |
+----------+-----------+----------+------------+-------------+ n | NewSub- n | n |
+-----------+--------+-----------+----------+------------+------------+
| ITUFax- | | | FileType | 2 | 2 | 2
| 16, 18 Mode |
+----------+-----------+----------+------------+-------------+ | Orien- n | n | n | n |
+-----------+--------+-----------+----------+------------+------------+
McIntyre & Zilles Expires 1/30/98 [Page 47]
Internet Draft File Format for Internet Fax July 30, 1997
+-----------+--------+-----------+----------+------------+------------+
| Coding- | tation | 1 | 1 |1 | 1 |
+----------+-----------+----------+------------+-------------+ | Photo-
| Method | | n | n | n | metric- n |
+-----------+--------+-----------+----------+------------+------------+
| Version- | | | | Interp- | |
| Number | | n | retation n | 0, 1 n | 10 n | 2, 5, 10
+-----------+--------+-----------+----------+------------+------------+
| 0,1,2,5,10 Version- |
+----------+-----------+----------+------------+-------------+ | Resolu- | | | |
| Year | tionUnit | 2, 3 <b> | 2, 3 <b> | 2, 3 <b> | 2, 3 <b> |
+----------+-----------+----------+------------+-------------+
+-----------+--------+-----------+----------+------------+------------+
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 40] 48]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
+----------+-----------+----------+------------+-------------+
Appendix B: Use of TIFF-F for Black-and-White Fax
B.1 Overview
Section 4 provides the standard definition of image/tiff, application=F,
known commonly as TIFF-F and historically as TIFF Class F (see Section
4.4). Although Section 4 is a necessary and sufficient definition of
TIFF-F, there is much lore associated with TIFF-F. This appendix, based
on [TIFF-F], captures this lore and provides background information for
implementors.
B.2 TIFF-F Fields
The following table summarizes the required and optional (or
recommended) fields for TIFF-F (See Section 4.). The optional fields are
shown with an asterisk * For convenience, a minimum subset of values is
also shown; these values should provide maximum portability with
historical TIFF-F readers.
Field | RowsPer- Values | Minimum | Comment
------------------|-------------|--------------|----------------------
BadFaxLines* |>=0 | |number of bad fax lines
BitsPerSample | 1 | 1 |one bit per sample
CleanFaxData* | Strip |n 0,1,2 | n 0,1,2 |status of bad lines
Compression | n 3,4 | 3 |3 for T.4 (MH, MR)
|
+----------+-----------+----------+------------+-------------+ | Samples- |4 for T.6 (MMR)
ConsecutiveBad- |>=0 | |max number of bad lines
Lines* | | |
DateTime* | ASCII | PerPixel |"YYYY:MM:DD:HH:MM:SS"
DocumentName* | 1 ASCII | 1, 3 |informational field
FillOrder | 1, 3, 4 2,1 | 1, 3, 4 2 |LSB first or MSB first
ImageDescription* |
+----------+-----------+----------+------------+-------------+ ASCII | Software |informational field
ImageWidth | {ASCII} 1728, 2048, | {ASCII} 1728, 2048 |depends on XResolution
| {ASCII} 2432, 2592, | {ASCII} |
+----------+-----------+----------+------------+-------------+
| Strip- 3072, 3648, | |
| 3456, 4096, | |
| Byte- 4864 | |
ImageLength | >0 | |required
NewSubFileType | 2 | Counts 2 |single page of
| <n> | <n> |multipage file
Orientation* | <n> 1 | <n> 1 |1st row=top left,
|
+----------+-----------+----------+------------+-------------+ | Strip- | 1st col=top
PageNumber | X/X | 0/1 |pg/tot, 0 base,
| | | Offsets tot in 1st IFD
PhotometricInterp | <n> 0,1 | <n> 0 |0 is white
ResolutionUnit | <n> 2,3 | <n> 2 |inches (default)
RowsPerStrip |=ImageLength |=ImageLength |required
|
+----------+-----------+----------+------------+-------------+ or other | XResolu- | 200, 204,
McIntyre & Zilles Expires 1/30/98 [Page 49]
Internet Draft File Format for Internet Fax July 30, 1997
SamplesPerPixel | 100, 200,| 100, 200, 1 | 100, 200, 1 |one sample per pixel
Software* | ASCII | tion |informational field
StripByteCounts | 300, 400, >0 | 300, 400 |required
StripOffsets | 300, 400 >0 | 300, 400 |required
T4Options | 4,5 | 4 |MH, MR: incl. if not MMR
T6Options | 406 0 | |MMR: incl. only if MMR
XResolution | 204,200,300 | 204 |If unit is per inch
|
+----------+-----------+----------+------------+-------------+ 400,406 | YResolu- | 98, 196,
| 100, 200,| 100, 200, 77 | 100, 200, | If unit is per cm
YResolution | tion 196,98,100, | 100, 200, 196,98 |If unit is per inch
| 300, 400 200,300,392,| | 300, 400
| 300, 400 | |
| 300, 392, | | | | 77,38.5 | | 400 | | | |
+----------+-----------+----------+------------+-------------+
Table A.2 If unit is per cm
------------------|-------------|--------------|--------------------
B.3 Implementation Notes
B.3.1 Strips
In general, TIFF files divide an image into "strips," also known as
"bands." Each strip contains a few scanlines of the image. By using
strips, a TIFF reader need not load the entire image into memory, thus
enabling it to fetch and decompress small random portions of the image
as necessary.
The number of scanlines in a strip is described by the RowsPerStrip
value and the number of bytes in the strip after compression by the
StripByteCount value. The location in the TIFF Extension Fields
+-----------+------------------------------------------------+
| | file of each strip is
given by the StripOffsets values.
Strip size is application dependent. Existing TIFF-F usage is typically
one strip per page in multi-page TIFF-F. See Sections 2.1.2 and 2.1.3.
B.3.2 Bit Order
The current TIFF specification [TIFF] does not require a Baseline TIFF
reader to support FillOrder=2, i.e. lowest numbered 1-bit pixel in the
least significant bit of a byte. It further recommends that FillOrder=2
be used only in special purpose applications.
Facsimile data appears on the phone line in bit-reversed order relative
to its description in ITU-T Recommendation T.4. Therefore, a wide
majority of facsimile applications choose this natural order for data in
a file. Nevertheless, TIFF F readers must be able to read data in both
bit orders and support FillOrder values of 1 and 2. See Section 3.2.1.
McIntyre & Zilles Expires 1/30/98 [Page 50]
Internet Draft File Format for Internet Fax Modes |
+-----------+------------------------------------------------|
| Field | Bi-level | Color | Color | Mixed Raster|
| | | (Lossy) | (Lossless) | Content |
+-----------+-----------+----------+----- ------+------------+
| T4Options | 0, 1, 4, 5| | | 0, 1, 4, 5 |
+-----------+-----------+----------+------------+------------+
| T6Options | July 30, 1997
B.3.3. Multi-Page Files
Many existing applications already read TIFF-F-like files, but do not
support multiples pages using a linked list of IFDs. A Baseline TIFF
reader is not required to read any IFDs beyond the first one. Since a
multi-page format greatly simplifies file management in fax application
software, TIFF-F specifies multi-page documents and uses NewSubfileType
= 2.
B.3.4. Compression
Group 3 facsimile uses three compression methods. The ITU-T T.4
Recommendation [T.4] defines a one-dimensional compression method known
as Modified Huffman (MH) and a two-dimensional method known as Modified
READ (MR) (READ is short for Relative Element Address Designate). In
1984, a somewhat more efficient compression method known as Modified
Modified READ (MMR) was defined in the ITU-T T.6 Recommendation [T.6].
MMR was originally defined for use with Group 4 facsimile, so that this
compression method has been commonly called Group 4 compression. In
1991, the MMR method was approved for use in Group 3 facsimile and has
since been widely utilized.
TIFF-F supports these three compression methods. The most common
practice is the one-dimensional Modified Huffman (MH) compression
method. This is specified by setting the Compression field value to 3
and then setting bit 0 | | | of the T4Options field to 0. Alternatively, the
two dimensional Modified READ (MR) method, which is much less frequently
used in historical TIFF-F implementations, may be selected by setting
bit 0 |
+-----------+-----------+----------+------------+------------+
| Document- | | | | |
| Name | {ASCII} | {ASCII} | {ASCII} | {ASCII} |
+-----------+-----------+----------+------------+------------+
| Page- | | | | |
| Number | n, m | n, m | n, m | n, m |
+-----------+-----------+----------+------------+------------+
| XPosition | | | | r |
+-----------+-----------+----------+------------+------------+
| YPosition | | | | r |
+-----------+-----------+----------+------------+------------+
McIntyre & Zilles Expires 9/20/97 [Page 41]
Internet Draft File Format for Internet Fax March 20, 1997
+-----------+-----------+----------+------------+------------+
| SubIFDs | | | | <n> |
+-----------+-----------+----------+------------+------------+
| Indexed | | | 0, 1 | 0, of the T4Options field to 1. The value of Bit 2 in this field is
determined by the use of fill bits.
Depending upon the application, the more efficient two-dimensional
Modified Modified Read (MMR)compression method from T.6 may be selected
by setting the Compression field value to 4 and then setting the
first two bits (and all unused bits) of the T6Options field to 0.
Baseline TIFF also permits use of Compression=2 to specify Modified
Huffman compression, but the data is presented in a form that is not
byte aligned. As a result, TIFF-F uses Compression=3 instead of
Compression=2 to specify Modified Huffman compression.
Uncompressed data is not supported in TIFF-F. Therefore, Bit 1 |
+-----------+-----------+----------+------------+------------+
| Chroma- | | | | |
| SubSampl- | | | | |
| ing | | n, m | | n, m |
+-----------+-----------+----------+------------+------------+
| Chroma- | | | | |
| Position- | | | | |
| ing | | 1, 2 | | 1,2 |
+-----------+-----------+----------+------------+------------+
| Decode | | <n> | <n> | <n> |
+-----------+-----------+----------+------------+------------+
| Default- | | | | |
| ImageColor| | | | <n> |
+-----------+-----------+----------+------------+------------+
| Strip- | | | | |
| RowCounts | | | | <n> |
+-----------+-----------+----------+------------+------------+
Table A.3 New Fields
+-----------+------------------------------------------------+
| | Fax Modes |
+-----------+------------------------------------------------|
| Field | Bi-level | Color | Color | Mixed Raster|
| | | (Lossy | (Lossless) | Content |
+-----------+-----------+---------+------------+-------------+
| Global- | | | | |
| Parame- | | | | |
| tersIFD | <IFD> | <IFD> | <IFD> | <IFD> |
+-----------+-----------+---------+------------+-------------+
| Profile- | | | | |
| Type | n | n | n | n |
+-----------+-----------+---------+------------+-------------+
| ITUFax- | | | | |
| Mode | n | n | n | n |
+-----------+-----------+---------+------------+-------------+
| Coding- | | | | |
| Methods | n | n | n | n |
+-----------+-----------+---------+------------+-------------+
| Version- | | | | |
| Number | n | n |n | n |
+-----------+-----------+---------+------------+-------------+
| Version- | | | | |
| Year | <b> | <b> | <b> | <b> |
+-----------+-----------+---------+------------+-------------+ in both
the T4Options and T6Options fields must always be 0.
Since two-dimensional encoding is not required for Group 3
compatibility, some historic TIFF F readers have not been able to read
such files. However, for maximum efficiency, images should be
compressed using T.6 MMR compression when possible. For maximum
portability, applications also need to be able to read and write one-
dimensional (Modified Huffman) files. Some TIFF-F readers will also
support two-dimensional Modified READ files. Applications that wish to
have the maximum flexibility in reading TIFF F files should support all
three of the supported compression methods.
McIntyre & Zilles Expires 1/30/98 [Page 51]
Internet Draft File Format for Internet Fax July 30, 1997
B.3.5. Example Use of Page-quality Fields
Here are examples for writing the CleanFaxData, BadFaxLines, and
ConsecutiveBadFaxLines fields:
1. Facsimile hardware does not provide page quality information: Do not
write page-quality fields.
2. Facsimile hardware provides page quality information, but reports no
bad lines. Write only BadFaxLines = 0.
3. Facsimile hardware provides page quality information, and reports
bad lines. Write both BadFaxLines and ConsecutiveBadFaxLines. Also
write CleanFaxData = 1 or 2 if the hardware's regeneration
capability is known.
4. Computer generated file: write CleanFaxData = 0.
5. Source image data stream is error-corrected or otherwise guaranteed
to be error-free: Do not write page-quality fields.
B.3.6 Resolution
Almost all facsimile products support both "standard" (98 dpi)
resolution and "fine" (196 dpi) vertical resolution. Therefore, fine-
resolution files are quite portable in the real world.
In 1993, the ITU-T added support for higher resolutions in the T.30
Recommendation, including 200 x 200, 300 x 300, 400 x 400 in dots per
inch based units. At the same time, support was added for metric
dimensions which are equivalent to the following inch based resolutions:
392v x 203h and 392v x 406h. Therefore, the full set of inch-based
equivalents of the new resolutions are supported in the TIFF-F, since
they may appear in some image data streams received from Group 3
facsimile devices. However, many facsimile terminals and older versions
of TIFF-F readers are likely to not support the use of these higher
resolutions.
It is permissible for applications to treat the following XResolution
values as being equivalent: <204,200> and <400,406>. In a similar
respect, the following YResolution values may also be treated as being
equivalent: <98, 100>, <196, 200>, and <392, 400>. These equivalencies
were allowed by [T.30] to permit conversions between inch and metric
based facsimile terminals.
In a similar respect, the optional support of metric based resolutions
in the TIFF-F reader (i.e. 77 x 38.5 cm) is included for completeness,
since they are used in some legacy TIFF-F applications, but this use is
not recommended for the creation of TIFF-F files by a writer.
Historical TIFF-F documents also included the following values related
to A5 and A6 widths: 816 and 1216. Per the most recent version of
[T.4], A5 and A6 documents are no longer supported in Group 3 facsimile,
so the related width values are now obsolete.
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 42] 52]
Internet Draft File Format for Internet Fax March 20, July 30, 1997
+-----------+-----------+---------+------------+-------------+
| BadFax- | | | | |
| Lines | n | | | |
+-----------+----------------------------------+-------------+
| CleanFax- | | | | |
| Data | 0, 1, 2 | | | |
+-----------+-----------+---------+------------+-------------+
| Consecu- | | | | |
| tiveBad- | | | | |
| FaxLines | n | | | |
+-----------+-----------+---------+------------+-------------+
| ImageLayer| | | | n, m |
+-----------+-----------+---------+------------+-------------+
B.3.7. EOL
As illustrated in FIGURE 1/T.4 in [T.4], facsimile documents encoded
with Modified Huffman begin with an EOL, which in TIFF-F is byte-
aligned. The last line of the image is not terminated by an EOL. In a
similar respect, images encoded with Modified READ two dimensional
encoding begin with an EOL, followed by a tag bit. The EOL/tag bit
combination is byte aligned in TIFF-F. See Section 3.4.
B.3.8. RTC Exclusion
Aside from EOLs, TIFF F files contain only image data. This means that
the Return To Control sequence (RTC) is specifically excluded.
B.3.9. Use of EOFB for T.6 Compressed Images
TIFF-F pages which are encoded with the T.6 Modified Modified READ
compression method should include an "end-of-facsimile-block" (EOFB)
code at the end of each coded strip. Per [TIFF], the EOFB code is
followed by pad bits as needed to align on a byte boundary. TIFF
readers should ignore any bits other than pad bits beyond the EOFB.
McIntyre & Zilles Expires 9/20/97 1/30/98 [Page 43] 53]
----