TIFF-FX IMPLEMENTATION REPORT This report describes the implementation and interoperability testing of TIFF-FX, specified in RFC 2301, the Proposed Standard File Format for Internet Fax . The following independently implemented and jointly tested the TIFF-FX profiles listed, and furnished the data for this report: Japan Color Document Committee - All profiles Matsushita Graphic Communication Systems Toshiba TEC Sharp NTT Printec Mitsubishi Fuji Xerox Waseda University Genoa Technology - All profiles Xerox - All profiles Intel - All profiles, except L Image Power - All profiles, except L and M This report is organized in 2 sections. Section 1 describes the results of TIFF-FX interoperability testing. Section 2 describes the independent TIFF-FX implementations, by implementor. Each description includes a series of tables. The first is a general table that lists the TIFF-FX fields, field values and features used by multiple profiles. Following it are tables, one for each implemented profile, that list the TIFF-FX fields and features that either can have multiple values or are optional in that profile. This report was compiled by Rob Buckley . ----------------------------------------------------------------------- SECTION 1: TIFF-FX INTEROPERABILITY TESTING ----------------------------------------------------------------------- To facilitate interoperability testing, a standard set of test cases was specified that exercised all "features and options" of TIFF-FX, per RFC 2026. The test methodology was: generate TIFF-FX files corresponding to these test cases by converting uncompressed TIFF 6.0 source images to TIFF-FX file, exchange the resulting files by e-mail, then read the TIFF- FX files and convert them to uncompressed TIFF 6.0 images for visual checking and comparison with the original source images. For Profile M, both merged and layer source images were available. A subset of the TIFF-FX test files used for interoperability testing will be available soon at . In addition, Genoa Technology made available a pre-release version of its TIFF Test System for interoperability testing. The TIFF Test System includes a listing utility, image viewer and file validator. Intel, Genoa Technology and Xerox demonstrated interoperability for TIFF-FX Profiles J, C and M at the IMC Fax Connect 1 Workshop, December 1-2, 1998 in San Jose, CA. They and other workshop participants also demonstrated interoperability for Profiles S and F. For the final report on the workshop, see . The interoperability results are based on testing between at least 2 independent implementations. Fields and features listed as implemented by the Reader were verified with TIFF-FX files created by an independent writer. Fields and features implemented in the Writer were verified by an independent reader, using visual checks (view and print) and, in the case of lossless compression, by pixel comparisons of the original and decompressed source images. General - apply to multiple profiles +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | ByteOrder | II, MM | II, MM | | DateTime* | Y | Y | | FillOrder | 1, 2 | 1, 2 | | ImageDescription* | Y | Y | | ImageWidth | A4/Letter, A3, B4 | A4/Letter, A3, B4 | | NewSubFileType | 2, 16, 18 | 2, 16, 18 | | Multi-page file | Y | Y | | Resolution: b&w | | | | ResolutionUnit=2 | Y | Y | | XResolution | 200/204,300,400/408| 200/204,300,400/408| | YResolution | 196/200,300,391/400| 196/200,300,391/400| | ResolutionUnit=3 | Y | Y | | XResolution | 80, 160 | 80, 160 | | YResolution | 77, 154 | 77, 154 | | Resolution: color | 100, 200, 300, 400 | 100, 200, 300, 400 | | Orientation* | Y | Y | | Software* | Y | Y | | DocumentName* | Y | Y | | PageNumber | Y | Y | | GlobalParametersIFD* | Y | Y | | CodingMethod* | Y | Y | | FaxProfile* | Y | Y | | ProfileType* | Y | Y | | VersionYear* | Y | Y | +--------------------------+--------------------+--------------------+ Y=Yes, N=No, *=optional field; All profiles use ImageLength, RowsPerStrip, StripByteCounts, StripOffsets Profile S +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | ResolutionUnit=2 | Y | Y | | XResolution | 200/204 | 200/204 | | YResolution | 98/100, 196/200 | 98/100, 196/200 | | T4Options | 0, 4 | 0, 4 | +--------------------------+--------------------+--------------------+ For all Profile S: ResolutionUnit=2, BitsPerSample=1, Compression=3 SamplesPerPixel=1, FillOrder=2, Profile F +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | Compression | 3, 4 | 3, 4 | | PhotometricInterpretation| 0, 1 | 0, 1 | | ResolutionUnit | 2, 3 | 2, 3 | | T4Options | 0, 1, 4, 5 | 0, 1, 4, 5 | | T6Options | Y | Y | | StripOffsets | single, multiple | single, multiple | | BadFaxLines | Y | Y | | CleanFaxLines | Y | Y | | ConsecutiveFaxLines | Y | Y | +--------------------------+--------------------+--------------------+ For all Profile F: BitsPerSample=1, SamplesPerPixel=1 Profile J +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | PhotometricInterpretation| 0, 1 | 0, 1 | | ResolutionUnit | 2, 3 | 2, 3 | +--------------------------+--------------------+--------------------+ For all Profile J: BitsPerSample=1, SamplesPerPixel=1, Compression=9 Profile C +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | BitsPerSample | 8 | 8 | | SamplesPerPixel | 1, 3 | 1, 3 | | ChromaSubsamping | (1, 1), (2, 2) | (1, 1), (2, 2) | | Decode | Y | Y | +--------------------------+--------------------+--------------------+ For all Profile C: ResolutionUnit=2, PhotometricInterpretation=10, Compression=7, ChromaPositioning=1 Profile L +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | 1-bit RGB | Y | Y | | 1-bit CMY | Y | Y | | 1-bit CMYK | Y | Y | | ITULAB | Y | Y | | BitsPerSample | 4, 8 | 4, 8 | | SamplesPerPixel | 1, 3 | 1, 3 | | Decode | Y | Y | | Indexed (Palette) | Y | Y | | BitsPerSample | 8 | 8 | +--------------------------+--------------------+--------------------+ For all Profile L: ResolutionUnit=2, Compression=10 1-bit RGB: BitsPerSample=1, SamplesPerPixel=3, PhotometricInt=2 1-bit CMY: BitsPerSample=1, SamplesPerPixel=3, PhotometricInt=5 1-bit CMYK: BitsPerSample=1, SamplesPerPixel=4, PhotometricInt=5 ITULAB: PhotometricInterpretation=10 Indexed: Indexed=1, SamplesPerPixel=1, PhotometricInt=10 Profile M +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | Number of layers | 1, 2, 3 | 1, 2, 3 | | Mixed Resolutions | Y | Y | | ImageLayer | Y | Y | | ModeNumber* | Y | Y | | Foreground/Background | Y | Y | | Compression | 7, 10 | 7, 10 | | Mixed color spaces | Y | Y | | XResolution,YResolution| 100, 200, 300, 400 | 100, 200, 300, 400 | | Decode | Y | Y | | XPosition, YPosition | Y | Y | | DefaultImageColor | Y | Y | | As Primary IFD | Y | Y | | Mask | Y | Y | | Compression | 3, 4, 9 | 3, 4, 9 | | XResolution,YResolution| 100, 200, 300, 400 | 100, 200, 300, 400 | | T4Options | Y | Y | | T6Options | Y | Y | | StripRowCounts | Y | Y | +--------------------------+--------------------+--------------------+ For all Profile M: ResolutionUnit=2, Mask:PhotometricInterpretation=0 Mask uses SubIFDs field to point to Foreground/Background Mixed Resolutions means Mask & Foreground/Background have different resolutons, Mixed Color Spaces means Foreground and Background have different PhotometricInterpretation values. ----------------------------------------------------------------------- SECTION 2: TIFF-FX IMPLEMENTATIONS ----------------------------------------------------------------------- Japan Color Document Committee Japan Color Document Committee Implementor No. 1 Name of implementation: MGCS TIFF-FX reader/writer Organization: Matsushita Graphic Communication Systems Inc. Platform: Windows 95/98/NT Origin of code: All original source code Location of code: proprietary to MGCS Inc. Contact: Yoshinori Aoki Sub-implementor: Sharp (operation only) Platform: Windows 95 Contact: Hideaki Yamada Sub-implementor: Toshiba TEC Corp. (operation only) Platform: Windows 95 Contact: Ryuji Iwazaki Profiles implemented: S, F, J Fields/Features tested: General - apply to multiple profiles +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | ByteOrder | II | II, MM | | DateTime | N | - | | FillOrder | 1, 2 | 1, 2 | | ImageDescription | N | - | | ImageWidth | A4/Letter, A3, B4 | A4/Letter, A3, B4 | | NewSubFileType | 2 | 2 | | Multi-page file | Y | Y | | Resolution: b&w | | | | ResolutionUnit=2 | Y | Y | | XResolution | 200/204,300,400/408| 200/204,300,400/408| | YResolution | 196/200,300,391/400| 196/200,300,391/400| | ResolutionUnit=3 | N | - | | XResolution | - | - | | YResolution | - | - | | Resolution: color | - | - | | Orientation | N | - | | Software | N | - | | DocumentName | N | - | | PageNumber | Y | Y | | GlobalParametersIFD | N | - | | CodingMethod | N | - | | FaxProfile | N | - | | ProfileType | N | - | | VersionYear | N | - | +--------------------------+--------------------+--------------------+ Profile S +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | ResolutionUnit=2 | Y | Y | | XResolution | 200/204 | 200/204 | | YResolution | 98/100, 196/200 | 98/100, 196/200 | | T4Options | 0, 4 | 0, 4 | +--------------------------+--------------------+--------------------+ Profile F +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | Compression | 3, 4 | 3, 4 | | PhotometricInterpretation| 0 | 0 | | T4Options | 0, 1, 4, 5 | 0, 1, 4, 5 | | T6Options | Y | Y | | StripOffsets | single | single, multiple | | BadFaxLines | N | - | | CleanFaxLines | N | - | | ConsecutiveFaxLines | N | - | +--------------------------+--------------------+--------------------+ Profile J +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | PhotometricInterpretation| 0 | 0 | | ResolutionUnit | 2 | 2 | +--------------------------+--------------------+--------------------+ Japan Color Document Committee, Implementor No. 2 Name of implementation: Toshiba TEC TIFF-FX reader/writer Organization: Toshiba TEC Corp. Platform: Windows 95 Origin of code: Internal interface architecture with Independent JPEG Group public source code and image processing algorithms implemented from scratch Location of code: proprietary to Toshiba TEC Contact: Ryuji Iwazaki Profiles implemented: C Fields/Features tested: General - apply to multiple profiles +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | ByteOrder | II | II | | DateTime | N | - | | FillOrder | 1, 2 | 1, 2 | | ImageDescription | N | - | | ImageWidth | A4/Letter, A3, B4 | A4/Letter, A3, B4 | | NewSubFileType | 2 | 2 | | Multi-page file | Y | Y | | Resolution: b&w | - | - | | Resolution: color | 100, 200, 300, 400 | 100, 200, 300, 400 | | Orientation | Y | Y | | Software | N | - | | DocumentName | N | - | | PageNumber | Y | Y | | GlobalParametersIFD | Y | Y | | CodingMethod | Y | Y | | FaxProfile | Y | Y | | ProfileType | Y | Y | | VersionYear | Y | Y | +--------------------------+--------------------+--------------------+ Profile C +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | BitsPerSample | 8 | 8 | | SamplesPerPixel | 1, 3 | 1, 3 | | ChromaSubsamping | (1, 1), (2, 2) | (1, 1), (2, 2) | | Decode | Y | Y | +--------------------------+--------------------+--------------------+ Japan Color Document Committee, Implementor No. 3 Name of implementation: NTT Printec TIFF-FX Profile L reader/writer Organization: NTT Printec Corp. Platform: Unix - Sun Solaris 2.4 Origin of code: JBIG codec (s1r4) for color facsimile test from AT&T Location of code: proprietary to NTT Printec Corp. Contact: Makoto Matsuki Sub-implementor: Mitsubishi (operation only) Platform: Unix - Sun OS 4.1.4 Contact: Fumitaka Ono Profiles implemented: L Fields/Features tested: General - apply to multiple profiles +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | ByteOrder | II | II, MM | | DateTime | Y | Y | | FillOrder | 1 | 1 | | ImageDescription | Y | Y | | ImageWidth | A4/Letter, A3, B4 | A4/Letter, A3, B4 | | NewSubFileType | 2 | 2 | | Multi-page file | Y | Y | | Resolution: b&w | - | - | | Resolution: color | 100, 200, 300, 400 | 100, 200, 300, 400 | | Orientation | N | N | | Software | Y | Y | | DocumentName | Y | Y | | PageNumber | Y | Y | | GlobalParametersIFD | Y | Y | | CodingMethod | Y | Y | | FaxProfile | Y | Y | | ProfileType | Y | Y | | VersionYear | Y | Y | +--------------------------+--------------------+--------------------+ Profile L +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | 1-bit RGB | Y | Y | | 1-bit CMY | Y | Y | | 1-bit CMYK | Y | Y | | ITULAB | Y | Y | | BitsPerSample | 2-8 | 2-8 | | SamplesPerPixel | 1, 3 | 1, 3 | | Decode | Y | Y | | Indexed (Palette) | Y | Y | | BitsPerSample | 2-12 | 2-12 | +--------------------------+--------------------+--------------------+ Japan Color Document Committee, Implementor No. 4 Name of implementation: Fuji_Xerox TIFF-FX reader/writer Organization: Fuji Xerox Co. Ltd. Platform: Unix - Sun Solaris 2.5.1 Origin of code: Internal interface architecture with Independent JPEG Group public source code, libtiff src code for general I/O formatting, Markus Kuhn free JBIG library, and image processing algorithms implemented from publication Location of code: proprietary to Fuji Xerox Contact: Hiroaki Ikegami Sub-implementor: Waseda University (M operation only) Platform: Unix - Sun Solaris 2.6 Contact: Hiroyuki Kasai Profiles implemented: All - S, F, J, C, L, M Fields/Features tested: General - apply to multiple profiles +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | ByteOrder | II, MM | II, MM | | DateTime | Y | Y | | FillOrder | 1, 2 | 1, 2 | | ImageDescription | Y | Y | | ImageWidth | A4/Letter, A3, B4 | A4/Letter, A3, B4 | | NewSubFileType | 2, 16, 18 | 2, 16, 18 | | Multi-page file | Y | Y | | Resolution: b&w | | | | ResolutionUnit=2 | Y | Y | | XResolution | 200/204,300,400/408| 200/204,300,400/408| | YResolution | 196/200,300,391/400| 196/200,300,391/400| | ResolutionUnit=3 | Y | Y | | XResolution | 80, 160 | 80, 160 | | YResolution | 77, 154 | 77, 154 | | Resolution: color | 100, 200, 300, 400 | 100, 200, 300, 400 | | Orientation | Y | Y | | Software | Y | Y | | DocumentName | Y | Y | | PageNumber | Y | Y | | GlobalParametersIFD | Y | Y | | CodingMethod | Y | Y | | FaxProfile | Y | Y | | ProfileType | Y | Y | | VersionYear | Y | Y | +--------------------------+--------------------+--------------------+ Profile S +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | ResolutionUnit=2 | Y | Y | | XResolution | 200/204 | 200/204 | | YResolution | 98/100, 196/200 | 98/100, 196/200 | | T4Options | 0, 4 | 0, 4 | +--------------------------+--------------------+--------------------+ Profile F +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | Compression | 3, 4 | 3, 4 | | PhotometricInterpretation| 0, 1 | 0, 1 | | ResolutionUnit | 2, 3 | 2, 3 | | T4Options | 0, 1, 4, 5 | 0, 1, 4, 5 | | T6Options | Y | Y | | StripOffsets | single, multiple | single, multiple | | BadFaxLines | Y | Y | | CleanFaxLines | Y | Y | | ConsecutiveFaxLines | Y | Y | +--------------------------+--------------------+--------------------+ Profile J +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | PhotometricInterpretation| 0, 1 | 0, 1 | | ResolutionUnit | 2, 3 | 2, 3 | +--------------------------+--------------------+--------------------+ Profile C +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | BitsPerSample | 8 | 8 | | SamplesPerPixel | 1, 3 | 1, 3 | | ChromaSubsamping | (1, 1), (2, 2) | (1, 1), (2, 2) | | Decode | Y | Y | +--------------------------+--------------------+--------------------+ Profile L +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | 1-bit RGB | Y | Y | | 1-bit CMY | Y | Y | | 1-bit CMYK | Y | Y | | ITULAB | Y | Y | | BitsPerSample | 2-8, 12 | 2-8, 12 | | SamplesPerPixel | 1, 3 | 1, 3 | | Decode | Y | Y | | Indexed (Palette) | Y | Y | | BitsPerSample | 2-8, 12 | 2-8, 12 | +--------------------------+--------------------+--------------------+ Profile M +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | Number of layers | 1, 2, 3 | 1, 2, 3 | | Mixed Resolutions | Y | Y | | ImageLayer | Y | Y | | ModeNumber | Y | Y | | Foreground/Background | Y | Y | | Compression | 7, 10 | 7, 10 | | PhotometricInterpret. | 2, 10 | 2, 10 | | Mixed color spaces | Y | Y | | XResolution,YResolution| 100, 200, 300, 400 | 100, 200, 300, 400 | | Decode | Y | Y | | XPosition, YPosition | Y | Y | | DefaultImageColor | Y | Y | | As Primary IFD | Y | Y | | Mask | Y | Y | | Compression | 3, 4, 9 | 3, 4, 9 | | XResolution,YResolution| 100, 200, 300, 400 | 100, 200, 300, 400 | | T4Options | Y | Y | | T6Options | Y | Y | | StripRowCounts | Y | Y | +--------------------------+--------------------+--------------------+ ------------------------------------------------------------------------ Genoa Technology Name of implementation: TIFF Test System Organization: Genoa Technology Platform: Windows 95/98/NT4.0 Origin of code: Internal interface architecture with Independent JPEG Group public source code, personalized src code for general I/O formatting, Markus Kuhn free JBIG library, and image processing algorithms implemented with LeadTools 6.0 Location of code: proprietary to Genoa Technology Contact: Teodor Ceausu Profiles implemented: All - S, F, J, C, L, M Fields/Features tested: General - apply to multiple profiles +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | ByteOrder | II, MM | II, MM | | DateTime | Y | Y | | FillOrder | 1, 2 | 1, 2 | | ImageDescription | Y | Y | | ImageWidth | A4/Letter, A3, B4 | A4/Letter, A3, B4 | | NewSubFileType | 2, 16, 18 | 2, 16, 18 | | Multi-page file | Y | Y | | Resolution: b&w | | | | ResolutionUnit=2 | Y | Y | | XResolution | 200/204,300,400/408| 200/204,300,400/408| | YResolution | 196/200,300,391/400| 196/200,300,391/400| | ResolutionUnit=3 | Y | Y | | XResolution | 80, 160 | 80, 160 | | YResolution | 77, 154 | 77, 154 | | Resolution: color | 100, 200, 300, 400 | 100, 200, 300, 400 | | Orientation | Y | Y | | Software | Y | Y | | DocumentName | Y | Y | | PageNumber | Y | Y | | GlobalParametersIFD | Y | Y | | CodingMethod | Y | Y | | FaxProfile | Y | Y | | ProfileType | Y | Y | | VersionYear | Y | Y | +--------------------------+--------------------+--------------------+ Profile S +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | ResolutionUnit=2 | Y | Y | | XResolution | 200/204 | 200/204 | | YResolution | 98/100, 196/200 | 98/100, 196/200 | | T4Options | 0, 4 | 0, 4 | +--------------------------+--------------------+--------------------+ Profile F +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | Compression | 3, 4 | 3, 4 | | PhotometricInterpretation| 0, 1 | 0, 1 | | ResolutionUnit | 2, 3 | 2, 3 | | T4Options | 0, 1, 4, 5 | 0, 1, 4, 5 | | T6Options | Y | Y | | StripOffsets | single, multiple | single, multiple | | BadFaxLines | Y | Y | | CleanFaxLines | Y | Y | | ConsecutiveFaxLines | Y | Y | +--------------------------+--------------------+--------------------+ Profile J +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | PhotometricInterpretation| 0, 1 | 0, 1 | | ResolutionUnit | 2, 3 | 2, 3 | +--------------------------+--------------------+--------------------+ Profile C +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | BitsPerSample | 8 | 8 | | SamplesPerPixel | 1, 3 | 1, 3 | | ChromaSubsamping | (1, 1), (2, 2) | (1, 1), (2, 2) | | Decode | Y | Y | +--------------------------+--------------------+--------------------+ Profile L +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | 1-bit RGB | Y | Y | | 1-bit CMY | Y | Y | | 1-bit CMYK | Y | Y | | ITULAB | Y | Y | | BitsPerSample | 4, 8, 12 | 4, 8, 12 | | SamplesPerPixel | 1, 3 | 1, 3 | | Decode | Y | Y | | Indexed (Palette) | Y | Y | | BitsPerSample | 8 | 8 | +--------------------------+--------------------+--------------------+ Profile M +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | Number of layers | 1, 2, 3 | 1, 2, 3 | | Mixed Resolutions | Y | Y | | ImageLayer | Y | Y | | ModeNumber | Y | Y | | Foreground/Background | Y | Y | | Compression | 7, 10 | 7, 10 | | PhotometricInterpret. | 2, 5, 10 | 2, 5, 10 | | Mixed color spaces | Y | Y | | XResolution,YResolution| 100, 200, 300, 400 | 100, 200, 300, 400 | | Decode | Y | Y | | XPosition, YPosition | Y | Y | | DefaultImageColor | Y | Y | | As Primary IFD | Y | Y | | Mask | Y | Y | | Compression | 3, 4, 9 | 3, 4, 9 | | XResolution,YResolution| 100, 200, 300, 400 | 100, 200, 300, 400 | | T4Options | Y | Y | | T6Options | Y | Y | | StripRowCounts | Y | Y | +--------------------------+--------------------+--------------------+ ------------------------------------------------------------------------ Xerox Name of implementation: Valen TIFF-X reader/writer Organization: Xerox Corp. Platform: Unix - Sun Solaris 2.6 Origin of code: Internal interface architecture with Independent JPEG Group public source code, libtiff src code for general I/O formatting, Markus Kuhn free JBIG library, and image processing algorithms implemented from publication Location of code: proprietary to Xerox Contact: Rob Buckley Profiles implemented: All - S, F, J, C, L, M Fields/Features tested: General - apply to multiple profiles +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | ByteOrder | II, MM | II, MM | | DateTime | N | N | | FillOrder | 1, 2 | 1, 2 | | ImageDescription | Y | Y | | ImageWidth | A4/Letter, A3, B4 | A4/Letter, A3, B4 | | NewSubFileType | 2, 16, 18 | 2, 16, 18 | | Multi-page file | Y | Y | | Resolution: b&w | | | | ResolutionUnit=2 | Y | Y | | XResolution | 200/204,300,400/408| 200/204,300,400/408| | YResolution | 196/200,300,391/400| 196/200,300,391/400| | ResolutionUnit=3 | Y | Y | | XResolution | 80, 160 | 80, 160 | | YResolution | 77, 154 | 77, 154 | | Resolution: color | 100, 200, 300, 400 | 100, 200, 300, 400 | | Orientation | Y | Y | | Software | Y | Y | | DocumentName | Y | Y | | PageNumber | Y | Y | | GlobalParametersIFD | Y | Y | | CodingMethod | Y | Y | | FaxProfile | Y | Y | | ProfileType | Y | Y | | VersionYear | Y | Y | +--------------------------+--------------------+--------------------+ Profile S +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | ResolutionUnit=2 | Y | Y | | XResolution | 200/204 | 200/204 | | YResolution | 98/100, 196/200 | 98/100, 196/200 | | T4Options | 0, 4 | 0, 4 | +--------------------------+--------------------+--------------------+ Profile F +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | Compression | 3, 4 | 3, 4 | | PhotometricInterpretation| 0, 1 | 0, 1 | | ResolutionUnit | 2, 3 | 2, 3 | | T4Options | 0, 1, 4, 5 | 0, 1, 4, 5 | | T6Options | Y | Y | | StripOffsets | single, multiple | single, multiple | | BadFaxLines | Y | Y | | CleanFaxLines | Y | Y | | ConsecutiveFaxLines | Y | Y | +--------------------------+--------------------+--------------------+ Profile J +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | PhotometricInterpretation| 0 | 0, 1 | | ResolutionUnit | 2, 3 | 2, 3 | +--------------------------+--------------------+--------------------+ Profile C +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | BitsPerSample | 8 | 8 | | SamplesPerPixel | 1, 3 | 1, 3 | | ChromaSubsamping | (1, 1), (2, 2) | (1, 1), (2, 2) | | Decode | Y | Y | +--------------------------+--------------------+--------------------+ Profile L +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | 1-bit RGB | Y | Y | | 1-bit CMY | Y | Y | | 1-bit CMYK | Y | Y | | ITULAB | Y | Y | | BitsPerSample | 4, 8 | 4, 8 | | SamplesPerPixel | 1, 3 | 1, 3 | | Decode | Y | Y | | Indexed (Palette) | Y | Y | | BitsPerSample | 8 | 8 | +--------------------------+--------------------+--------------------+ Profile M +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | Number of layers | 1, 2, 3 | 1, 2, 3 | | Mixed Resolutions | Y | Y | | ImageLayer | Y | Y | | ModeNumber | Y | Y | | Foreground/Background | Y | Y | | Compression | 7, 10 | 7, 10 | | PhotometricInterpret. | 2, 10 | 2, 10 | | Mixed color spaces | Y | Y | | XResolution,YResolution| 100, 200, 300, 400 | 100, 200, 300, 400 | | Decode | Y | Y | | XPosition, YPosition | Y | Y | | DefaultImageColor | Y | Y | | As Primary IFD | Y | Y | | Mask | Y | Y | | Compression | 3, 4, 9 | 3, 4, 9 | | XResolution,YResolution| 100, 200, 300, 400 | 100, 200, 300, 400 | | T4Options | Y | Y | | T6Options | Y | Y | | StripRowCounts | Y | Y | +--------------------------+--------------------+--------------------+ ------------------------------------------------------------------------ Intel Name of implementation: Intel Corporation Tiff-Fx reader-writer Organization: Intel Corporation Platform: Windows 95/98/NT Origin of code: Internal interface architecture with Independent JPEG Group public source code, code for general I/O formatting, Markus Kuhn free JBIG library, and image processing algorithms implemented from publication Location of code: proprietary to Intel Contact: Bradley Benham Profiles implemented: S, F, J, C, M Fields/Features tested: General - apply to multiple profiles +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | ByteOrder | II, MM | II, MM | | DateTime | N | N | | FillOrder | 1, 2 | 1, 2 | | ImageDescription | N | N | | ImageWidth | A4/Letter, A3, B4 | A4/Letter, A3, B4 | | NewSubFileType | 2, 16, 18 | 2, 16, 18 | | Multi-page file | Y | Y | | Resolution: b&w | | | | ResolutionUnit=2 | Y | Y | | XResolution | 200/204,300,400/408| 200/204,300,400/408| | YResolution | 196/200,300,391/400| 196/200,300,391/400| | ResolutionUnit=3 | Y | Y | | XResolution | 80, 160 | 80, 160 | | YResolution | 77, 154 | 77, 154 | | Resolution: color | 100, 200, 300, 400 | 100, 200, 300, 400 | | Orientation | N | N | | Software | N | N | | DocumentName | N | N | | PageNumber | Y | Y | | GlobalParametersIFD | Y | Y | | CodingMethod | Y - fixed value | Y - fixed value | | FaxProfile | Y - fixed value | Y - fixed value | | ProfileType | Y - fixed value | Y - fixed value | | VersionYear | Y - fixed value | Y - fixed value | +--------------------------+--------------------+--------------------+ Profile S +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | ResolutionUnit=2 | Y | Y | | XResolution | 200/204 | 200/204 | | YResolution | 98/100, 196/200 | 98/100, 196/200 | | T4Options | 0, 4 | 0, 4 | +--------------------------+--------------------+--------------------+ Profile F +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | Compression | 3, 4 | 3, 4 | | PhotometricInterpretation| 0, 1 | 0, 1 | | ResolutionUnit | 2 | 2 | | T4Options | 0, 1, 4, 5 | 0, 1, 4, 5 | | T6Options | Y | Y | | StripOffsets | single, multiple | single, multiple | | BadFaxLines | N | N | | CleanFaxLines | N | N | | ConsecutiveFaxLines | N | N | +--------------------------+--------------------+--------------------+ Profile J +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | PhotometricInterpretation| 0, 1 | 0, 1 | | ResolutionUnit | 2 | 2 | +--------------------------+--------------------+--------------------+ Profile C +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | BitsPerSample | 8 | 8 | | SamplesPerPixel | 1, 3 | 1, 3 | | ChromaSubsamping | (1, 1), (2, 2) | (1, 1), (2, 2) | | Decode | N | N | +--------------------------+--------------------+--------------------+ Profile M +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | Number of layers | 1, 2, 3 | 1, 2, 3 | | Mixed Resolutions | Y | Y | | ImageLayer | Y | Y | | ModeNumber | Y | Y | | Foreground/Background | Y | Y | | Compression | 7 | 7 | | PhotometricInterpret. | 10 | 10 | | Mixed color spaces | N | N | | XResolution,YResolution| 100, 200, 300, 400 | 100, 200, 300, 400 | | Decode | N | N | | XPosition, YPosition | Y | Y | | DefaultImageColor | Y | Y | | As Primary IFD | Y | Y | | Mask | Y | Y | | Compression | 3, 4 | 3, 4 | | XResolution,YResolution| 100, 200, 300, 400 | 100, 200, 300, 400 | | T4Options | Y | Y | | T6Options | Y | Y | | StripRowCounts | Y | Y | +--------------------------+--------------------+--------------------+ ------------------------------------------------------------------------ Image Power Name of implementation: Image Power TIFF-FX reader-writer Organization: Image Power, Inc. Platform: Windows 95/NT Origin of code: Extension to Image Power's Power SDK 1.1 to support TIFF-FX features, using libtiff for basic TIFF support and jbigkit for JBIG support Location of code: proprietary for Power SDK, other components available on the Internet Contact: Stephen Swift Profiles implemented: S, F, J, C Fields/Features tested: General - apply to multiple profiles +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | ByteOrder | II | II | | DateTime | N | N | | FillOrder | 2 | 2 | | ImageDescription | N | N | | ImageWidth | A4/Letter, A3, B4 | A4/Letter, A3, B4 | | NewSubFileType | 2 | 2 | | Multi-page file | Y | Y | | Resolution: b&w | | | | ResolutionUnit=2 | Y | Y | | XResolution | 200/204,300,400/408| 200/204,300,400/408| | YResolution | 196/200,300,391/400| 196/200,300,391/400| | ResolutionUnit=3 | N | N | | XResolution | - | - | | YResolution | - | - | | Resolution: color | 100, 200 | 100, 200 | | Orientation | N | N | | Software | N | N | | DocumentName | N | N | | PageNumber | Y | Y | | GlobalParametersIFD | N | N | | CodingMethod | N | N | | FaxProfile | Y | Y | | ProfileType | Y | Y | | VersionYear | N | N | +--------------------------+--------------------+--------------------+ Profile S +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | ResolutionUnit=2 | Y | Y | | XResolution | 200/204 | 200/204 | | YResolution | 98/100, 196/200 | 98/100, 196/200 | | T4Options | 0, 4 | 0, 4 | +--------------------------+--------------------+--------------------+ Profile F +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | Compression | 3, 4 | 3, 4 | | PhotometricInterpretation| 0, 1 | 0, 1 | | ResolutionUnit | 2 | 2 | | T4Options | 0, 1, 4, 5 | 0, 1, 4, 5 | | T6Options | Y | Y | | StripOffsets | single | single, multiple | | BadFaxLines | N | N | | CleanFaxLines | N | N | | ConsecutiveFaxLines | N | N | +--------------------------+--------------------+--------------------+ Profile J +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | PhotometricInterpretation| 1 | 1 | | ResolutionUnit | 2 | 2 | +--------------------------+--------------------+--------------------+ Profile C +--------------------------+--------------------+--------------------+ | Field/Feature | Writer | Reader | +--------------------------+--------------------+--------------------+ | BitsPerSample | 8 | 8 | | SamplesPerPixel | 1, 3 | 1, 3 | | ChromaSubsamping | (1, 1), (2, 2) | (1, 1), (2, 2) | | Decode | N | N | +--------------------------+--------------------+--------------------+