RFC 3949 - File Format for Internet Fax(8)

时间:2006-10-31 来源: 作者: 点击:
beginningoftheTIFFfiletoachildIFD[TTN1]. XPosition(286). RATIONAL YPosition(287). RATIONAL Specifiesthehorizontalandverticaloffsetsofthetopleftof theIFDfromthetopleftofthePrimaryIFDinresolutionunits.
  
      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 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 in
      inches.

      The Primary IFD does not use the XPosition or YPosition fields.
      The XPosition and YPosition values must be specified for MRC child
      IFDs; there is no default value.

8.2.3.  New Fields

   Decode(433).
   SRATIONAL
      For Foreground and Background layers, see Section 6.2.3.

   T82Options(435)
   LONG
      For Mask layer, see Section 5.2.3.

   ImageBaseColor(434).
   SHORT
      Count = SamplesPerPixel

   In areas of an image layer where no image data is available (i.e.,
   where no strips are defined, or where the StripByteCounts entry for
   a given strip is 0), the color specified by ImageBaseColor will be
   used.

   If the ImageBaseColor field is used in an IFD that contains image
   data encoded in ITU L*a*b*, then the ImageBaseColor will be
   interpreted with the color-encoding parameters of the image data
   (i.e., color gamut, illuminant, bit/sample, and decode).  If the
   ImageBaseColor field is used in an IFD that contains image data that
   is not encoded in ITU L*a*b, then the ImageBaseColor SHALL be
   interpreted as 8 bits/sample, 3 samples/pixel ITU L*a*b*.  If the
   ImageBaseColor field is used in an IFD that contains no encoded
   image data, then the ImageBaseColor SHALL be interpreted as 8
   bits/sample, 3 samples/pixel ITU L*a*b*.  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.

   A [T.44] stripe may contain a Foreground or Background image less
   than full stripe size, with the rest of the stripe assuming a
   default image color.  In this case, the default image color is imaged
   first, followed by the image data.  In Profile M, this is represented
   as a child IFD containing no encoded image data but specifying the
   default image color in the ImageBaseColor field.  A second child IFD
   contains the image data.  To ensure the default image color is imaged
   first, the order value in the ImageLayer field of the IFD defining
   the ImageBaseColor field MUST have a lower value than the order
   value in the ImageLayer field of the IFD defining the image data.

   To define a child IFD specifying a ImageBaseColor but containing no
   encoded image data, create an IFD with the following settings.

      ImageLayer[0]:             specified layer
      ImageLayer[1]:             less than any other IFDs corresponding
                                 to the same layer and strip.
      RowsPerStrip:              strip height
      ImageLength:               strip height
      ImageWidth:                full image width
      BitsPerSample:             8
      PhotometricInterpretation: 10 (ITULAB)
      SamplesPerPixel:           3
      Compression:               1 (none)
      X/YResolution:             that of the Primary IFD
      XPosition:                 0
      YPosition:                 the offset from the top of the page to
                                 the beginning of the strip in the
                                 resolution units of inches
      StripByteCounts:           single 0 value
      StripOffsets:              single 0 entry
      NewSubFileType:            bit 4 O     (MRC)
      ImageBaseColor:            desired color in 8 bit ITULAB

   For the Foreground layer image, the default value for the
   ImageBaseColor field is black.  For other cases, including the
   Background layer image, the default value is white.

   StripRowCounts(559).
   LONG
      Count = number of strips.
      The number of scanlines stored in a strip.  Profile M allows each
      fax strip to store a different number of scanlines.  For strips
      with more than one layer, the maximum strip size is either 256
      scanlines or full page size.  The 256 maximum SHOULD be used
      unless the capability to receive longer strips has been
      negotiated.  This field replaces RowsPerStrip for IFDs with
      variable-size strips.  Only one of the two fields, StripRowCounts
      and RowsPerStrip, may be used in an IFD.

   ImageLayer (34732).
   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, which selects pixels from the Background and Foreground
      layers.  The ImageLayer tag contains two values, which describe
      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.
      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
      2: second image to be imaged in this layer
      3: ...

      In Profile M, more than one image can exist in a single layer.
      ImageLayer[1] specifies the order in which images within a single
      layer are to be imaged.  This insures that overlapping images
      within a single layer are imaged correctly.

      If an IFD contains no encoded image data and is used only to
      specify the ImageBaseColor field, the value of ImageLayer[1] must
      be less than that of any other IFD corresponding to the same layer
      and strip to ensure the image data is interpreted as on top of the
      default color.

      In Profile M, it is possible to have only a single layer.  For
      example, if a page contains only a single continuous-tone
      photograph, then only the Background layer would occur.  In this
      case, the Background layer will be stored as the Primary IFD.
      ImageLayer[0] will be 1, indicating Background; ImageLayer[1] will
      be 1, as there can be no other IFDs associated with that layer.
      No Mask layer will exist.

8.3.  Recommended TIFF Fields

   See Sections 2.2.3. and 2.2.4.

8.4.  Rules and Requirements for Images

   Profile M 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 SHALL be
      present and be the primary image.  The Mask layer SHALL support
      the binary data representations defined in Section 3 and MAY
      support those defined in Sections 4 and 5, with the exception that
      PhotometricInterpretation MUST be 0.  If only one layer exists,
      then the image corresponding to that layer is the primary image.

   2. The Primary IFD 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 SHALL support the color
      representations defined in Section 6 and MAY support those defined
      in Section 7.  These images MAY optionally cover only a portion of
      the strip or page.

   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.

   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
      (bit 4).

   6. Each MRC-specific child IFD must have a NewSubFileType field value
      set to 16, indicating MRC (bit 4).

   7. In MRC fax, each layer is transmitted as a sequence of strips.  If
      the page consists of a single layer, then all strips shall be
      stored in the single Primary IFD.  In this case, coding parameters
      cannot change between strips.  If the page consists of more than
      one layer, then all strips of the Mask layer shall be stored in
      the single Primary IFD.  All strips of the Foreground/Background
      layers SHALL be stored in separate IFDs, referenced by the Primary
      IFD’s SubIFD field, containing an ImageLayer field with
      ImageLayer[0] identifying either Background (layer 1) or
      Foreground (layer 3), and Imagelayer[1] identifying order in which
      images within a single layer are to be imaged.  The TIFF XPosition
      and YPosition fields are used to indicate the placement of these
      images with respect to the primary image.

   8. When the Mask image is present, the resolution of Background and
      Foreground images must each be an integer factor of the Mask
      image.  For example, if the Mask image is 400 pixels/inch, then
      the Background or Foreground image may be at 400 pixels/inch
      (400/1), 200 pixels/inch (400/2), or 100 pixels/inch (400/4).

8.5.  Profile M: MRC Fax Profile Summary

   Recommended fields are shown with an asterisk (*).

   Required fields or values are shown with a double asterisk (**).  If
   the double asterisk is on the field name, then all the listed values
   are required of implementations; if the double asterisk is in the
   Values column, then only the values suffixed with a double asterisk
   are required of implementations.

   +------------------+-----------------------------------------+
   | Baseline Fields  |               Values                    |
   +------------------+-----------------------------------------+
   | BitsPerSample    | 1**: binary mask, RGB, CMY(K)           |
   |                  | 2 - 8**: bits per color sample          |
   |                  | 9 - 12: optional 12 bits/sample         |
   +------------------+-----------------------------------------+
   | Compression      | 1: None (ImageBaseColor IFD only)       |
   |                  | 3**: Modified Huffman and Modified READ |
   |                  | 4: Modified Modified READ               |
   |                  | 7**: JPEG                               |
   |                  | 9: JBIG, per T.85                       |
   |                  | 10: JBIG, per T.43                      |
   +------------------+-----------------------------------------+
   | DateTime*        | {ASCII): date/time in 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 the        |
   |                  | contents of the image.                  |
   +------------------+-----------------------------------------+
   | ImageWidth       | 864, 1024, 1216, 1728**, 2048, 2432,    |
   |                  | 2592, 3072, 3456, 3648, 4096, 4864      |
   |                  | Note: legal widths for the Primary IFD. |
   +------------------+-----------------------------------------+
   | 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  (Mask Layer)         |
   | pretation        | 2:  RGB                                 |
   |                  | 10**: ITULAB                            |
   +------------------+-----------------------------------------+
   | ResolutionUnit** | 2: inch                                 |
   +------------------+-----------------------------------------+
   | RowsPerStrip     | n: number or scanlines per 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 each 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                                           |
   +------------------+-----------------------------------------+
   | T4Options        | 0**: required if Compression is Modified|
   |                  | Huffman, EOLs not byte aligned          |
   |                  | 1: required if Compression 2D Modified  |
   |                  | READ, EOLs are not byte aligned         |
   |                  | 4**: required if Compression Modified   |
   |                  | Huffman, EOLs byte aligned              |
   |                  | 5: required if Compression 2D Modified  |
   |                  | READ, EOLs are byte aligned             |
   +------------------+-----------------------------------------+
   | 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                                   |
   +------------------+-----------------------------------------+

   +------------------+-----------------------------------------+
   | ChromaSubSampling| (1,1), (2, 2)**                         |
   |                  | (1, 1): equal numbers of lightness and  |
   |                  | chroma samples horizontally & vertically|
   |                  | (2, 2): twice as many lightness samples |
   |                  | as chroma horizontally and vertically   |
   +------------------+-----------------------------------------+
   | ChromaPositioning| 1: centered                             |
   +------------------+-----------------------------------------+
   | 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        |
   |                  | resolution units                        |
   +------------------+-----------------------------------------+
   | YPosition        | vertical offset in primary IFD          |
   |                  | resolution units                        |
   +------------------+-----------------------------------------+
   | New Fields                                                 |
   +------------------+-----------------------------------------+
   | Decode           | minL, maxL, mina, maxa, minb, maxb:     |
   |                  | minimum and maximum values for L*a*b*   |
   +------------------+-----------------------------------------+
   | ImageBaseColor   | a,b,c: background color in ITULAB       |
   +------------------+-----------------------------------------+
   | StripRowCounts   | <n>: number of scanlines in each strip  |
   +------------------+-----------------------------------------+
   | ImageLayer       | n, m: layer number, imaging sequence    |
   |                  | (e.g., strip number)                    |
   +------------------+-----------------------------------------+
   | T82Options       | 0: T.85 profile of T.82 coding          |
   +------------------+-----------------------------------------+
   | GlobalParameters | IFD: global parameters IFD              |
   | IFD*             |                                         |
   +------------------+-----------------------------------------+
   | ProfileType*     | n: type of data stored in TIFF file     |
   +------------------+-----------------------------------------+
   | FaxProfile*      | n: ITU-compatible fax profile           |
   +------------------+-----------------------------------------+
   | CodingMethods*   | n: compression algorithms used in file  |
   +------------------+-----------------------------------------+
   | ModeNumber*      | n: version of T.44 standard             |
   +------------------+-----------------------------------------+
   | VersionYear*     | byte sequence: year of ITU fax standard |
   +------------------+-----------------------------------------+

9.  MIME content-types image/tiff and image/tiff-fx

   The MIME content-types image/tiff and image/tiff-fx are used for
   TIFF-FX encoded image data, as defined in this document.  [TIFF-REG]
   and [TIFF-FX-REG] describe the registration of these MIME content-
   types.

10.  Security Considerations

   This document describes a file format for Internet fax, which is a
   series of profiles of TIFF for facsimile.  As such, it does not
   create any security issues not already identified in [TIFF-REG], in
   its use of fields as defined in [TIFF].  There are also new TIFF
   fields defined within this specification, but they are of a purely
   descriptive nature, so no new security risks are incurred.

   Further, the encoding specified in this document does not in any way
   preclude the use of any Internet security protocol to encrypt,
   authenticate, or non-repudiate TIFF-encoded facsimile messages.

11.  References

11.1.  Normative References

   [REQ]         Bradner, S., "Key words for use in RFCs to Indicate
                 Requirement Levels", BCP 14, RFC 2119, March 1997.

   [T.4]         ITU-T Recommendation T.4, Standardization of group 3
                 facsimile apparatus for document transmission, October
                 1997.

   [T.6]         ITU-T Recommendation T.6, Facsimile coding schemes and
                 coding control functions for group 4 facsimile
                 apparatus, November 1988

   [T.30]        ITU-T Recommendation T.30 - Procedures for Document
                 Facsimile Transmission in the General Switched
                 Telephone Network, June 1996

   [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
------分隔线----------------------------
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
最新评论 查看所有评论
发表评论 查看所有评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
推荐内容