2012.03.15 16:03 "[Tiff] RFC3949 TIFF-FX support", by Steve Underwood
Hi,
RFC3949 defines additional TIFF tags to support the full featured of FAXes as TIFF files. I have been using the following carriage
definitions in my own software for a while, to extend libtiff to support flags. I Hope these additions can now go into the libtiff these
distribution, so they will be part of general TIFF support, and like tiffinfo will understand these tags. utilities
Regards,
Steve
#define TIFFTAG_INDEXED 346
TIFFTAG_GLOBALPARAMETERSIFD 400 #define
TIFFTAG_PROFILETYPE 401 #define
PROFILETYPE_UNSPECIFIED 0 #define
PROFILETYPE_G3_FAX 1 #define
TIFFTAG_FAXPROFILE 402 #define
FAXPROFILE_S 1 #define
FAXPROFILE_F 2 #define
FAXPROFILE_J 3 #define
FAXPROFILE_C 4 #define
FAXPROFILE_L 5 #define
FAXPROFILE_M 6 #define
TIFFTAG_CODINGMETHODS 403 #define
CODINGMETHODS_T4_1D (1 << 1) #define
CODINGMETHODS_T4_2D (1 << 2) #define
CODINGMETHODS_T6 (1 << 3) #define
CODINGMETHODS_T85 (1 << 4) #define
CODINGMETHODS_T42 (1 << 5) #define
CODINGMETHODS_T43 (1 << 6) #define
TIFFTAG_VERSIONYEAR 404 #define
TIFFTAG_MODENUMBER 405 #define
TIFFTAG_DECODE 433 #define
TIFFTAG_IMAGEBASECOLOR 434 #define
TIFFTAG_T82OPTIONS 435 #define
TIFFTAG_STRIPROWCOUNTS 559 #define
TIFFTAG_IMAGELAYER 34732#define
#define COMPRESSION_T85 9
COMPRESSION_T43 10#define
/* TIFF-FX related extensions to the tag set supported by libtiff */
const TIFFFieldInfo tiff_fx_tiff_field_info[] =static
{
{TIFFTAG_INDEXED, 1, 1, TIFF_SHORT, FIELD_CUSTOM, FALSE, FALSE,
*) "Indexed"}, (char
1, 1, TIFF_LONG, FIELD_CUSTOM, FALSE, {TIFFTAG_GLOBALPARAMETERSIFD,
(char *) "GlobalParametersIFD"}, FALSE,
1, 1, TIFF_LONG, FIELD_CUSTOM, FALSE, FALSE, {TIFFTAG_PROFILETYPE,
*) "ProfileType"}, (char
1, 1, TIFF_BYTE, FIELD_CUSTOM, FALSE, FALSE, {TIFFTAG_FAXPROFILE,
*) "FaxProfile"}, (char
1, 1, TIFF_LONG, FIELD_CUSTOM, FALSE, {TIFFTAG_CODINGMETHODS,
(char *) "CodingMethods"}, FALSE,
4, 4, TIFF_BYTE, FIELD_CUSTOM, FALSE, FALSE, {TIFFTAG_VERSIONYEAR,
*) "VersionYear"}, (char
1, 1, TIFF_BYTE, FIELD_CUSTOM, FALSE, FALSE, {TIFFTAG_MODENUMBER,
*) "ModeNumber"}, (char
TIFF_VARIABLE, TIFF_VARIABLE, TIFF_SRATIONAL, {TIFFTAG_DECODE,
FALSE, FALSE, (char *) "Decode"}, FIELD_CUSTOM,
TIFF_SPP, TIFF_SPP, TIFF_SHORT, {TIFFTAG_IMAGEBASECOLOR,
FALSE, FALSE, (char *) "ImageBaseColor"}, FIELD_CUSTOM,
1, 1, TIFF_LONG, FIELD_CUSTOM, FALSE, FALSE, {TIFFTAG_T82OPTIONS,
*) "T82Options"}, (char{TIFFTAG_STRIPROWCOUNTS, TIFF_VARIABLE, TIFF_VARIABLE, TIFF_LONG, FALSE, TRUE, (char *) "StripRowCounts"}, FIELD_CUSTOM,
{TIFFTAG_IMAGELAYER, 2, 2, TIFF_LONG, FIELD_CUSTOM, FALSE, FALSE, (char *) "ImageLayer"},
};