--- !ruby/object:RI::ClassDescription 
attributes: 
- !ruby/object:RI::Attribute 
  comment: 
  name: image_info
  rw: R
- !ruby/object:RI::Attribute 
  comment: 
  name: label
  rw: R
class_methods: 
- !ruby/object:RI::MethodSummary 
  name: new
comment: 
- !ruby/struct:SM::Flow::P 
  body: "An image object. This will be an /XObject dictionary in the document. This includes description and data. The diectionary includes:"
- !ruby/object:SM::Flow::LIST 
  contents: 
  - !ruby/struct:SM::Flow::LI 
    label: "Type:"
    body: (name, Optional) The type of PDF object that this dictionary describes; if present, must be /XObject for an image XObject.
  - !ruby/struct:SM::Flow::LI 
    label: "Subtype:"
    body: (name, Required) The type of XObject that this dictionary describes; must be /Image for an image /XObject.
  - !ruby/struct:SM::Flow::LI 
    label: "Width:"
    body: (integer, Required) The width of the image, in samples.
  - !ruby/struct:SM::Flow::LI 
    label: "Height:"
    body: (integer, Required) The height of the image, in samples.
  - !ruby/struct:SM::Flow::LI 
    label: "ColorSpace:"
    body: "(name or array, Required for images, except those that use the /JPXDecode filter; not allowed for image masks) The color space in which image samples are specified; it can be any type of color space except /Pattern. If the image uses the JPXDecode filter, this entry is optional: * If /ColorSpace is present, any color space specifications in the JPEG2000 data are ignored. * If /ColorSpace is absent, the color space specifications in the JPEG2000 data are used. The /Decode array is also ignored unless /ImageMask is true."
  - !ruby/struct:SM::Flow::LI 
    label: "BitsPerComponent:"
    body: (integer, Required except for image masks and images that use the JPXDecode filter) The number of bits used to represent each color component. Only a single value may be specified; the number of bits is the same for all color components. Valid values are 1, 2, 4, 8, and (in PDF 1.5) 16. If /ImageMask is true, this entry is optional, and if specified, its value must be 1. If the image stream uses a filter, the value of BitsPerComponent must be consistent with the size of the data samples that the filter delivers. In particular, a CCITTFaxDecode or JBIG2Decode filter always delivers 1-bit samples, a RunLengthDecode or DCTDecode filter delivers 8-bit samples, and an LZWDecode or FlateDecode filter delivers samples of a specified size if a predictor function is used. If the image stream uses the JPXDecode filter, this entry is optional and ignored if present. The bit depth is determined in the process of decoding the JPEG2000 image.
  - !ruby/struct:SM::Flow::LI 
    label: "Intent:"
    body: "(name, Optional; PDF 1.1) The name of a color rendering intent to be used in rendering the image (see \x93Rendering Intents\x94 on page 230). Default value: the current rendering intent in the graphics state."
  - !ruby/struct:SM::Flow::LI 
    label: "ImageMask:"
    body: "(boolean, Optional) A flag indicating whether the image is to be treated as an image mask (see Section 4.8.5, \x93Masked Images\x94). If this flag is true, the value of /BitsPerComponent must be 1 and Mask and /ColorSpace should not be specified; unmasked areas are painted using the current nonstroking color. Default value: false."
  - !ruby/struct:SM::Flow::LI 
    label: "Mask:"
    body: "(stream or array, Optional except for image masks; not allowed for image masks; PDF 1.3) An image XObject defining an image mask to be applied to this image (see \x93Explicit Masking\x94 on page 321), or an array specifying a range of colors to be applied to it as a color key mask (see \x93Color Key Masking\x94 on page 321). If ImageMask is true, this entry must not be present. (See implementation note 51 in Appendix H.)"
  - !ruby/struct:SM::Flow::LI 
    label: "Decode:"
    body: "(array, Optional) An array of numbers describing how to map image samples into the range of values appropriate for the image\x92s color space (see \x93Decode Arrays\x94 on page 314). If ImageMask is true, the array must be either [0 1] or [1 0]; otherwise, its length must be twice the number of color components required by ColorSpace. If the image uses the JPXDecode filter and ImageMask is false, Decode is ignored. Default value: see \x93Decode Arrays\x94 on page 314."
  - !ruby/struct:SM::Flow::LI 
    label: "Interpolate:"
    body: "(boolean, Optional) A flag indicating whether image interpolation is to be performed (see \x93Image Interpolation\x94 on page 316). Default value: false."
  - !ruby/struct:SM::Flow::LI 
    label: "Alternates:"
    body: "(array, Optional; PDF 1.3) An array of alternate image dictionaries for this image (see \x93Alternate Images\x94 on page 317). The order of elements within the array has no significance. This entry may not be present in an image XObject that is itself an alternate image."
  - !ruby/struct:SM::Flow::LI 
    label: "SMask:"
    body: "(stream, Optional; PDF 1.4) A subsidiary image XObject defining a soft-mask image (see \x93Soft-Mask Images\x94 on page 522) to be used as a source of mask shape or mask opacity values in the transparent imaging model. The alpha source parameter in the graphics state determines whether the mask values are interpreted as shape or opacity. If present, this entry overrides the current soft mask in the graphics state, as well as the image\x92s Mask entry, if any. (However, the other transparency related graphics state parameters\x97blend mode and alpha constant\x97remain in effect.) If SMask is absent, the image has no associated soft mask (although the current soft mask in the graphics state may still apply)."
  - !ruby/struct:SM::Flow::LI 
    label: "SMaskInData:"
    body: "(integer, Optional for images that use the JPXDecode filter, meaningless otherwise; PDF 1.5) A code specifying how soft-mask information (see \x93Soft-Mask Images\x94 on page 522) encoded with image samples should be used: (0) If present, encoded soft-mask image information should be ignored. (1) The image\x92s data stream includes encoded soft-mask values. An application can create a soft-mask image from the information to be used as a source of mask shape or mask opacity in the transparency imaging model. (2) The image\x92s data stream includes color channels that have been preblended with a background; the image data also includes an opacity channel. An application can create a soft-mask image with a Matte entry from the opacity channel information to be used as a source of mask shape or mask opacity in the transparency model."
  - !ruby/object:SM::Flow::LIST 
    contents: 
    - !ruby/struct:SM::Flow::LI 
      label: "*"
      body: If this entry has a nonzero value, SMask should not
    type: :BULLET
  - !ruby/struct:SM::Flow::P 
    body: "be specified. See also Section 3.3.8, \x93JPXDecode Filter.\x94 Default value: 0."
  - !ruby/struct:SM::Flow::LI 
    label: "Name:"
    body: "(name, Required in PDF 1.0; optional otherwise) The name by which this image XObject is referenced in the XObject subdictionary of the current resource dictionary (see Section 3.7.2, \x93Resource Dictionaries\x94). Note: This entry is obsolescent and its use is no longer recommended. (See implementation note 52 in Appendix H.)"
  - !ruby/struct:SM::Flow::LI 
    label: "StructParent:"
    body: "(integer, Required if the image is a structural content item; PDF 1.3) The integer key of the image\x92s entry in the structural parent tree (see \x93Finding Structure Elements from Content Items\x94 on page 797)."
  - !ruby/struct:SM::Flow::LI 
    label: "ID:"
    body: "(string, Optional; PDF 1.3; indirect reference preferred) The digital identifier of the image\x92s parent Web Capture content set (see Section 10.9.5, \x93Object Attributes Related to Web Capture\x94)."
  - !ruby/struct:SM::Flow::LI 
    label: "OPI:"
    body: "(dictionary, Optional; PDF 1.2) An OPI version dictionary for the image (see Section 10.10.6, \x93Open Prepress Interface (OPI)\x94). If ImageMask is true, this entry is ignored."
  - !ruby/struct:SM::Flow::LI 
    label: "Metadata:"
    body: "(stream, Optional; PDF 1.4) A metadata stream containing metadata for the image (see Section 10.2.2, \x93Metadata Streams\x94)."
  - !ruby/struct:SM::Flow::LI 
    label: "OC:"
    body: "(dictionary, Optional; PDF 1.5) An optional content group or optional content membership dictionary (see Section 4.10, \x93Optional Content\x94), specifying the optional content properties for this image XObject. Before the image is processed, its visibility is determined based on this entry. If it is determined to be invisible, the entire image is skipped, as if there were no Do operator to invoke it."
  type: :NOTE
constants: []

full_name: PDF::Writer::External::Image
includes: []

instance_methods: 
- !ruby/object:RI::MethodSummary 
  name: to_s
name: Image
superclass: PDF::Writer::External
