Implementation Report for RFC 2301 TIFF-FX INTEROPERABILITY TABLES This report summarizes the interoperability test results for TIFF-FX, specified in RFC 2301, the Proposed Standard File Format for Internet Fax . In particular, it summarizes the results of the two interoperability reports For each TIFF-FX profile, this report gives a table with the number of implementations for each feature of the profile. The following independently implemented and jointly tested TIFF-FX: Brother Canon Fuji Xerox Genoa Technology (now Quality Logic) Image Power Intel Kyocera Mita Matsushita Graphic Communication Systems Minolta Mitsubishi Murata NEC NTT Printec Oki Data Ricoh Sharp Toshiba TEC Waseda University Xerox Details of their implementations are given in the interoperability reports cited earlier. Of these participants, 18 implemented Profile S 16 implemented Profile F 9 implemented Profile J 8 implemented Profile C 5 implemented Profile L 5 implemented Profile M +1 other implemented Profile M reader only ORGANIZATION OF THIS REPORT This report is laid out in 6 parts, one for each profile. Each part has a table that lists the features of the profile for which the implementation had a choice, and the number of independent implementations (# Impl) of that feature. For example, T4Options in Profile S could have a value of 0 or 4; the implementations are counted separately for each value. A reader/writer pair is counted as a single implementation. Following the table a list of the fixed features, which all implementations implemented and which had single values determined by the profile. For example, BitsPerSample=1 for Profiles S, F and J. Following this is a list of derivative features, which all implementations implemented, but which have values that depended on the data. For example, the value of StripByteCounts is a function of the amount of compressed image data. Finally, there are optional notes. The data in this report can be used to determine the features for which there were at least two independent interoperable implementations. This report was prepared by rbuckley@crt.xerox.com and presented during the IFax WG meeting at the 56th IETF Meeting in San Francisco. +--------------------------------------------------+ | PROFILE S | +-----------------------------------------+--------+ | Feature | # Impl | +-------------------------+---------------+--------+ |YResolution | 98/100 | 18 | | | 196/200 | 18 | +-------------------------+---------------+--------+ |T4Options (Note 1) | 0 | 18 | | | 4 | 11 | +-------------------------+---------------+--------+ Fixed: Byte Order(II), BitsPerSample(1), Compression(3), FillOrder (2), ImageWidth (1728), NewSubFileType (2), PhotometricInterpretation (0), ResolutionUnit (2), SamplesPerPixel (1), XResolution (200/204) Derivative: ImageLength, PageNumber, RowsPerStrip, StripByteCounts, StripOffsets Note 1: T4Options=0 and T4Options=4 are both required, and most if not all implementations read both. All wrote T4Options=0, but only some wrote T4Options=4. Only those implementations that wrote both were counted. +--------------------------------------------------+ | PROFILES F and J | +-----------------------------------------+--------+ | Feature | # Impl | +-------------------------+---------------+--------+ |Byte Order | II | 16 | | | MM | 4 | |Compression | 3 | 16 | | | 4 | 15 | | | 9 | 9 | |DateTime | ascii | 2 | |FillOrder | 1 | 10 | | | 2 | 13 | |ImageDescription | ascii | 3 | |Orientation | 1 | 3 | |PhotometricInterpretation| 0 | 15 | | | 1 | 4 | |ResolutionUnit | 2 | 16 | | | 3 | 5 | |RowsPerStrip | =ImageLength | 16 | | | | 5 | |GlobalParametersIFD | IFD | 5 | | CodingMethod | n | 4 | | FaxProfile | n | 5 | | ProfileType | 1 | 5 | | VersionYear | n | 4 | +-------------------------+---------------+--------+ Fixed: ChromaPositioning (1), Compression (7), NewSubFileType (2), PhotometricInterpretation (10), ResolutionUnit (2) Derivative: ImageLength, ImageWidth, PageNumber, RowsPerStrip, StripByteCounts, StripOffsets +--------------------------------------------------+ | PROFILE L | +-----------------------------------------+--------+ | Feature | # Impl | +-------------------------+---------------+--------+ |Byte Order | II | 5 | | | MM | 3 | |Mode (see Note 3 below) | 1 | 4 | | | 2 | 4 | | | 3 | 4 | | | 4 | 4 | | | 5 | 4 | | | 6 | 5 | |DateTime | ascii | 3 | |FillOrder | 1 | 5 | | | 2 | 4 | |ImageDescription | ascii | 5 | |Orientation | 1 | 3 | |Software | ascii | 5 | |X/YResolution | 100 | 5 | | | 200 | 5 | | | 300 | 5 | | | 400 | 4 | +-------------------------+---------------+--------+ |Extension Fields | +-------------------------+---------------+--------+ |DocumentName | ascii | 5 | +-------------------------+---------------+--------+ |New Fields | +-------------------------+---------------+--------+ |Decode | | 5 | |GlobalParametersIFD | IFD | 5 | | CodingMethod | n | 5 | | FaxProfile | n | 5 | | ProfileType | 1 | 4 | | VersionYear | n | 5 | +-------------------------+---------------+--------+ Fixed: Compression (10), NewSubFileType (2), ResolutionUnit (2) Derivative: ImageLength, ImageWidth, PageNumber, RowsPerStrip, StripByteCounts, StripOffsets Note 3: Profile L implements "modes," which determine the combination of certain features, as given in the following table. +--------------+--------------+--------+--------+-------+ | Mode | Photometric- |Samples-|BitsPer-|Indexed| | |Interpretation|PerPixel| Sample | | +--------------+--------------+--------+--------+-------+ | 1=1-bit RGB | 2 | 3 | 1 | 0 | | 2=1-bit CMY | 5 | 3 | 1 | 0 | | 3=1-bit CMYK | 5 | 4 | 1 | 0 | | 4=Palette | 10 | 1 | 8 | 1 | | 5=Color | 10 | 3 | 4,8,12 | 0 | | 6=Grayscale | 10 | 1 | 8 | 0 | +--------------+--------------+--------+--------+-------+ +--------------------------------------------------+ | PROFILE M | +-----------------------------------------+--------+ | Feature | # Impl | +-------------------------+---------------+--------+ |Byte Order | II | 4 | | | MM | 4 | |DateTime | ascii | 2 | |FillOrder | 1 | 4 | | | 2 | 4 | |ImageDescription | ascii | 3 | |NewSubFileType | 16 | 4 | | | 18 | 4 | |Orientation | 1 | 3 | |Software | ascii | 3 | |Mask | | | | Compression | 3 | 4 | | | 4 | 4 | | | 9 | 3 | | X/YResolution | 100 | 4 | | | 200 | 4 | | | 300 | 4 | | | 400 | 4 | | StripRowCounts | n | 4 | | SubIFD | IFD | 4 | |Foreground/Background | | | | Compression | 7 | 4 | | | 10 | 3 | | X/YResolution | 100 | 4 | | | 200 | 4 | | | 300 | 4 | | | 400 | 4 | | PhotoInterpretation | 2 | 3 | | | 5 | 1 | | | 10 | 4 | | Decode | | 3 | | X/YPosition | | 4 | | ImageBaseColor | | 4 | | As Primary IFD | | 4 | +-------------------------+---------------+--------+ |Extension Fields | +-------------------------+---------------+--------+ |DocumentName | ascii | 3 | +-------------------------+---------------+--------+ |New Fields | +-------------------------+---------------+--------+ |GlobalParametersIFD | IFD | 4 | | CodingMethod | n | 3 | | FaxProfile | n | 3 | | ProfileType | 1 | 3 | | VersionYear | n | 3 | | ModeNumber | n | 3 | +-------------------------+---------------+--------+ Fixed: MaskPhotometricInterpetation (0), ResolutionUnit (2) Derivative: ImageLayer, ImageLength, ImageWidth, PageNumber, RowsPerStrip, StripByteCounts, StripOffsets Note 4: ImageBaseColor was labeled DefaultImageColor in RFC2301. ImageBaseColor is used in areas where no image data is available.