TIFF Image Characteristics Checking Capability

Table 1 describes the TIFF characteristics the Image Compliance service can check. The table breaks up the TIFF image characteristics into structure, which deals with the overall way a TIFF image is constructed, followed by a tag section, which deals with specific details of tags within the image.
Note: The design of the TIFF Validation portion of the Image Compliance service is extensible and can be expanded to cover more functions by using XML rules files, if required.
Table 1. TIFF Compliance Capabilities
Image Characteristic Attribute Default checking performed Description
Structure TIFF Header Required Must be a valid header format. The TIFF file is examined to verify a valid TIFF header is provided at the beginning of the image file. The TIFF header consists of a 3–byte unique sequence, followed by a pointer to the first image file directory (IFD) of the TIFF file.
Structure IFD Valid Image file directory (IFD) structure is checked for problems. TIFF files contain structures that are called image file directories (IFDs) that contain TIFF tags and the values that are associated with them. Image Compliance checks the structures within the image file and validates them.
Note: This check is only to ensure that the IFDs within a TIFF file are valid. Actual validation of the data that is provided in the TIFF tags is performed in another step.
Structure Singe Page Image must contain only a single page. The TIFF specification allows a single image file to contain multiple images, referred to in the TIFF specification as pages. X9.100-181-2007 requires each image to contain only a single page.
Structure Pointers Valid Pointers in all structures must point to valid data. Verifies that the pointers that are provided within the TIFF structure are valid and do not point outside of the valid range. It also checks to make sure 2 pointers within the image point to the same data.
Structure Byte Order Image data must be little endian. TIFF byte ordering (the ordering of bytes within larger structures) can be either little endian or big endian. The X9.100-181 specification requires the byte order of structures within the image to be little endian.
Structure Tag Order Tags in the file must be in ascending order. The TIFF specification requires TIFF tags within an image file to appear in numerical order, starting with the lowest tag number and ending with the highest tag number. This is verified for the image that is being evaluated.
Structure EOFB Present Checks for a valid end of facsimile block EOFB sequence in image data. Black and white images should be encoded based on the ITU-T G4 specification. The specification requires the image data be terminated by an EOFB (end of facsimile block). The check makes sure that the image data contains a valid EOFB bit sequence at the expected location in the image data.
Structure ExtraPadLimit Checks for excessive padding at the end of image data. The G4 compressed black and white image data can end at any bit position in the image. Extra padding bits or bytes can be used to ensure that the image data terminates at a byte boundary. This check makes sure that the image does not contain an excessive number of padding bytes.
Tag Image Width Not Zero Checks for image that is described as zero width. Evaluates the image width TIFF tag (tag 256) and ensures the value within the TIFF image is not zero. A zero image width is invalid.
Tag Image Length Not Zero Checks for image that is described as zero length. Evaluates the image length TIFF tag (tag 257) and ensures the value within the TIFF image is not zero. A zero image length is invalid.
Tag Compression Type Must be G4 compression. Evaluates the compression TIFF tag (tag 259). According to X9.100-181-2007, for a black and white image, the value of this tag must be 4.
Tag Photometric Interpretation Must be 0 (1 is allowed by variance). The photometric interpretation tag is used to indicate how the actual image pixels are to be interpreted (tag 262). The photometric interpretation tag should have a value of 0. However, variations from this value are permitted by the allowable variances to X9.100-181-2007.
Tag Single Strip Image Must be 1 (multiple strips are allowed by variance). Images within an image file can consist of a single grouping of image data (a single strip) or can be built from multiple groupings of image data (multiple strips). The strict interpretation of X9.100-181-2007 requires the image to be contained in only a single strip. Multiple strip images are a permissible variance to the base specification.
Tag Compare Length to RowsPerStrip Must be equal (Multiple strips are allowed by variance. This is not a failure if variance is allowed.) In a single strip image, the length of the image (provided with tag 257) is equal to the value provided with the RowsPerStrip tag (tag 278). If Image Compliance is configured to permit the multiple strip image variance allowed by X9.100-180-2007, this check does not result in the image being flagged for review.
Tag StripByteCount Entries Must be 1 (Multiple entries are allowed by variance). TIFF provides tag 279 to give the number of bytes that are expected in each strip after any compression. For single strip images, there should be only a single StripByteCount tag within the image. This check can be bypassed by allowing variances to X9.100-181 to be acceptable.
Tag XResolution Must be either 200 or 240. TIFF tag XResolution (tag 282) provides the resolution value of the image in the horizontal direction. According to X9.100-181, it must be either 200 or 240.
Tag YResolution Must be either 200 or 240. TIFF tag YResolution (tag 283) provides the resolution value of the image in the horizontal direction. According to X9.100-181, it must be either 200 or 240.
Tag Compare XResolution to YResolution XResolution must equal YResolution. According to X9.100–181, the values in the XResolution tag and the YResolution tag must be equal to each other. This check ensures that the values are equal.
Tag NewSubFileType Optional, must be 0. The presence of this tag (tag 254) within the image is optional. However, if it is included within the image, it should have the TIFF default value of 1.
Tag BitsPerSample Optional, must be 1. The presence of this tag (tag 258) within the image is optional. However, if it is included within the image, it should have a value of 1 for a black and white image.
Tag Thresholding Optional, must be 1. The presence of this tag (tag 263) within the image is optional. However, if it is included within the image, it should have the TIFF default value of 1.
Tag FillOrder Optional, must be 1 (2 is allowed by variance). The presence of this tag (tag 266) within the image is optional. However, if it is included within the image, it should have the TIFF default value of 1. If the variance to the strict enforcement of X9.100-181-2007 is allowed, then a value of 2 is permitted.
Tag Orientation Optional, must be 1 (other orientations are allowed by variance). The presence of this tag (tag 274) within the image is optional. However, if it is included within the image, it should be the TIFF default of 1. Values of 3 or 4 are allowed, if the variances are permitted.
Tag SamplesPerPixel Optional, must be 1. The presence of this tag (tag 277) within the image is optional. However, if it is included within the image, it should have the TIFF default value of 1.
Tag T6Options Optional, must be 0. The presence of this tag (tag 293) within the image is optional. However, if it is included within the image, it should have the TIFF default value of 0.
Tag ResolutionUnit Optional, must be 2. The presence of this tag (tag 296) within the image is optional. However, if it is included within the image, it should have the TIFF default value of 2. This value indicates that the image is in inches.
Tag Invalid Tag The specified tag must not be present in the TIFF file. The TIFF file is examined to verify that the specified tag is not present.