Class RtfImage

java.lang.Object
com.lowagie.text.rtf.RtfElement
com.lowagie.text.rtf.graphic.RtfImage
All Implemented Interfaces:
RtfBasicElement, com.lowagie.text.RtfElementInterface

public class RtfImage extends RtfElement
The RtfImage contains one image. Supported image types are jpeg, png, wmf, bmp.
Version:
$Id: RtfImage.java 4065 2009-09-16 23:09:11Z psoares33 $
  • Field Details

    • PICTURE_GROUP

      private static final byte[] PICTURE_GROUP
      Constant for the shape/picture group
    • PICTURE

      private static final byte[] PICTURE
      Constant for a picture
    • PICTURE_JPEG

      private static final byte[] PICTURE_JPEG
      Constant for a jpeg image
    • PICTURE_PNG

      private static final byte[] PICTURE_PNG
      Constant for a png image
    • PICTURE_WMF

      private static final byte[] PICTURE_WMF
      Constant for a wmf image
    • PICTURE_WIDTH

      private static final byte[] PICTURE_WIDTH
      Constant for the picture width
    • PICTURE_HEIGHT

      private static final byte[] PICTURE_HEIGHT
      Constant for the picture height
    • PICTURE_SCALED_WIDTH

      private static final byte[] PICTURE_SCALED_WIDTH
      Constant for the picture width scale
    • PICTURE_SCALED_HEIGHT

      private static final byte[] PICTURE_SCALED_HEIGHT
      Constant for the picture height scale
    • PICTURE_SCALE_X

      private static final byte[] PICTURE_SCALE_X
      Constant for horizontal picture scaling
    • PICTURE_SCALE_Y

      private static final byte[] PICTURE_SCALE_Y
      Constant for vertical picture scaling
    • PICTURE_BINARY_DATA

      private static final byte[] PICTURE_BINARY_DATA
      "\bin" constant
    • PIXEL_TWIPS_FACTOR

      private static final int PIXEL_TWIPS_FACTOR
      Constant for converting pixels to twips
      See Also:
    • imageType

      private final int imageType
      The type of image this is.
    • imageData

      private final byte[][] imageData
      Binary image data.
    • alignment

      private int alignment
      The alignment of this picture
    • width

      private final float width
      The width of this picture
    • height

      private final float height
      The height of this picture
    • plainWidth

      private final float plainWidth
      The intended display width of this picture
    • plainHeight

      private final float plainHeight
      The intended display height of this picture
    • topLevelElement

      private boolean topLevelElement
      Whether this RtfImage is a top level element and should be an extra paragraph.
    • byte2charLUT

      public static final byte[] byte2charLUT
      lookup table used for converting bytes to hex chars. TODO Should probably be refactored into a helper class
  • Constructor Details

    • RtfImage

      public RtfImage(RtfDocument doc, com.lowagie.text.Image image) throws com.lowagie.text.DocumentException
      Constructs a RtfImage for an Image.
      Parameters:
      doc - The RtfDocument this RtfImage belongs to
      image - The Image that this RtfImage wraps
      Throws:
      com.lowagie.text.DocumentException - If an error occurred accessing the image content
  • Method Details

    • getImageData

      private byte[][] getImageData(com.lowagie.text.Image image) throws com.lowagie.text.DocumentException
      Extracts the image data from the Image.
      Parameters:
      image - The image for which to extract the content
      Returns:
      The raw image data, not formated
      Throws:
      com.lowagie.text.DocumentException - If an error occurs accessing the image content
    • writeImageDataHexEncoded

      private void writeImageDataHexEncoded(OutputStream bab) throws IOException
      Writes the image data to the given buffer as hex encoded text.
      Parameters:
      bab -
      Throws:
      IOException
    • imageDataSize

      private int imageDataSize()
      Returns the image raw data size in bytes.
      Returns:
      the size in bytes
    • writeContent

      public void writeContent(OutputStream result) throws IOException
      Writes the RtfImage content
      Specified by:
      writeContent in interface RtfBasicElement
      Specified by:
      writeContent in class RtfElement
      Parameters:
      result - The OutputStream to write the content to
      Throws:
      IOException
    • setAlignment

      public void setAlignment(int alignment)
      Sets the alignment of this RtfImage. Uses the alignments from com.lowagie.text.Element.
      Parameters:
      alignment - The alignment to use.
    • setTopLevelElement

      public void setTopLevelElement(boolean topLevelElement)
      Set whether this RtfImage should behave like a top level element and enclose itself in a paragraph.
      Parameters:
      topLevelElement - Whether to behave like a top level element.