org.apache.poi.ddf
Class EscherBlipWMFRecord

java.lang.Object
  extended by org.apache.poi.ddf.EscherRecord
      extended by org.apache.poi.ddf.EscherBlipRecord
          extended by org.apache.poi.ddf.EscherBlipWMFRecord

public class EscherBlipWMFRecord
extends EscherBlipRecord

The blip record is used to hold details about large binary objects that occur in escher such as JPEG, GIF, PICT and WMF files. The contents of the stream is usually compressed. Inflate can be used to decompress the data.

Author:
Glen Stampoultzis
See Also:
Inflater

Field Summary
static java.lang.String RECORD_DESCRIPTION
           
 
Fields inherited from class org.apache.poi.ddf.EscherBlipRecord
field_pictureData, RECORD_ID_END, RECORD_ID_START
 
Constructor Summary
EscherBlipWMFRecord()
           
 
Method Summary
static byte[] compress(byte[] data)
          Compress the contents of the provided array
static byte[] decompress(byte[] data, int pos, int length)
          Decompresses a byte array.
 int fillFields(byte[] data, int offset, EscherRecordFactory recordFactory)
          This method deserializes the record from a byte array.
 int getBoundaryHeight()
          Retrieve the boundary height of the metafile drawing commands
 int getBoundaryLeft()
          Retrieve the left boundary of the metafile drawing commands
 int getBoundaryTop()
          Retrieve the top boundary of the metafile drawing commands
 int getBoundaryWidth()
          Retrieve the boundary width of the metafile drawing commands
 int getCacheOfSavedSize()
          Retrieve the cache of the saved size
 int getCacheOfSize()
          Retrieve the cache of the metafile size
 byte getCompressionFlag()
          Is the contents of the blip compressed?
 byte[] getData()
          The BLIP data
 byte getFilter()
          Filter should always be 0
 int getHeight()
          Retrieve the height of the metafile in EMU's (English Metric Units).
 java.lang.String getRecordName()
          The short name for this record
 int getRecordSize()
          Returns the number of bytes that are required to serialize this record.
 byte[] getSecondaryUID()
          Retrieve the secondary UID
 int getWidth()
          Retrieve the width of the metafile in EMU's (English Metric Units).
 int serialize(int offset, byte[] data, EscherSerializationListener listener)
          This method serializes this escher record into a byte array.
 void setBoundaryHeight(int field_6_boundaryHeight)
          Set the boundary height of the metafile drawing commands
 void setBoundaryLeft(int field_4_boundaryLeft)
          Set the left boundary of the metafile drawing commands
 void setBoundaryTop(int field_3_boundaryTop)
          Set the top boundary of the metafile drawing commands
 void setBoundaryWidth(int field_5_boundaryWidth)
          Set the boundary width of the metafile drawing commands
 void setCacheOfSavedSize(int field_9_cacheOfSavedSize)
          Set the cache of the saved size
 void setCacheOfSize(int field_2_cacheOfSize)
          Set the cache of the metafile size
 void setCompressionFlag(byte field_10_compressionFlag)
          Set whether the contents of the blip is compressed
 void setData(byte[] field_12_data)
          The BLIP data
 void setFilter(byte field_11_filter)
          Filter should always be 0
 void setHeight(int height)
          Set the height of the metafile in EMU's (English Metric Units).
 void setSecondaryUID(byte[] field_1_secondaryUID)
          Set the secondary UID
 void setWidth(int width)
          Set the width of the metafile in EMU's (English Metric Units).
 java.lang.String toString()
          The string representation of this record.
 
Methods inherited from class org.apache.poi.ddf.EscherBlipRecord
getPicturedata, setPictureData
 
Methods inherited from class org.apache.poi.ddf.EscherRecord
clone, display, fillFields, getChild, getChildRecords, getInstance, getOptions, getRecordId, isContainerRecord, readHeader, serialize, serialize, setChildRecords, setOptions, setRecordId
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

RECORD_DESCRIPTION

public static final java.lang.String RECORD_DESCRIPTION
See Also:
Constant Field Values
Constructor Detail

EscherBlipWMFRecord

public EscherBlipWMFRecord()
Method Detail

fillFields

public int fillFields(byte[] data,
                      int offset,
                      EscherRecordFactory recordFactory)
This method deserializes the record from a byte array.

Overrides:
fillFields in class EscherBlipRecord
Parameters:
data - The byte array containing the escher record information
offset - The starting offset into data.
recordFactory - May be null since this is not a container record.
Returns:
The number of bytes read from the byte array.

serialize

public int serialize(int offset,
                     byte[] data,
                     EscherSerializationListener listener)
This method serializes this escher record into a byte array.

Overrides:
serialize in class EscherBlipRecord
Parameters:
offset - The offset into data to start writing the record data to.
data - The byte array to serialize to.
listener - A listener to retrieve start and end callbacks. Use a NullEscherSerailizationListener to ignore these events.
Returns:
The number of bytes written.
See Also:
NullEscherSerializationListener

getRecordSize

public int getRecordSize()
Returns the number of bytes that are required to serialize this record.

Overrides:
getRecordSize in class EscherBlipRecord
Returns:
Number of bytes

getRecordName

public java.lang.String getRecordName()
The short name for this record

Overrides:
getRecordName in class EscherBlipRecord

getSecondaryUID

public byte[] getSecondaryUID()
Retrieve the secondary UID


setSecondaryUID

public void setSecondaryUID(byte[] field_1_secondaryUID)
Set the secondary UID


getCacheOfSize

public int getCacheOfSize()
Retrieve the cache of the metafile size


setCacheOfSize

public void setCacheOfSize(int field_2_cacheOfSize)
Set the cache of the metafile size


getBoundaryTop

public int getBoundaryTop()
Retrieve the top boundary of the metafile drawing commands


setBoundaryTop

public void setBoundaryTop(int field_3_boundaryTop)
Set the top boundary of the metafile drawing commands


getBoundaryLeft

public int getBoundaryLeft()
Retrieve the left boundary of the metafile drawing commands


setBoundaryLeft

public void setBoundaryLeft(int field_4_boundaryLeft)
Set the left boundary of the metafile drawing commands


getBoundaryWidth

public int getBoundaryWidth()
Retrieve the boundary width of the metafile drawing commands


setBoundaryWidth

public void setBoundaryWidth(int field_5_boundaryWidth)
Set the boundary width of the metafile drawing commands


getBoundaryHeight

public int getBoundaryHeight()
Retrieve the boundary height of the metafile drawing commands


setBoundaryHeight

public void setBoundaryHeight(int field_6_boundaryHeight)
Set the boundary height of the metafile drawing commands


getWidth

public int getWidth()
Retrieve the width of the metafile in EMU's (English Metric Units).


setWidth

public void setWidth(int width)
Set the width of the metafile in EMU's (English Metric Units).


getHeight

public int getHeight()
Retrieve the height of the metafile in EMU's (English Metric Units).


setHeight

public void setHeight(int height)
Set the height of the metafile in EMU's (English Metric Units).


getCacheOfSavedSize

public int getCacheOfSavedSize()
Retrieve the cache of the saved size


setCacheOfSavedSize

public void setCacheOfSavedSize(int field_9_cacheOfSavedSize)
Set the cache of the saved size


getCompressionFlag

public byte getCompressionFlag()
Is the contents of the blip compressed?


setCompressionFlag

public void setCompressionFlag(byte field_10_compressionFlag)
Set whether the contents of the blip is compressed


getFilter

public byte getFilter()
Filter should always be 0


setFilter

public void setFilter(byte field_11_filter)
Filter should always be 0


getData

public byte[] getData()
The BLIP data


setData

public void setData(byte[] field_12_data)
The BLIP data


toString

public java.lang.String toString()
The string representation of this record.

Overrides:
toString in class EscherBlipRecord
Returns:
A string

compress

public static byte[] compress(byte[] data)
Compress the contents of the provided array

Parameters:
data - An uncompressed byte array
See Also:
DeflaterOutputStream.write(int b)

decompress

public static byte[] decompress(byte[] data,
                                int pos,
                                int length)
Decompresses a byte array.

Parameters:
data - The compressed byte array
pos - The starting position into the byte array
length - The number of compressed bytes to decompress
Returns:
An uncompressed byte array
See Also:
InflaterInputStream.read()


Copyright 2008 The Apache Software Foundation or its licensors, as applicable.