Package loci.poi.ddf
Class EscherTextboxRecord
- java.lang.Object
-
- loci.poi.ddf.EscherRecord
-
- loci.poi.ddf.EscherTextboxRecord
-
public class EscherTextboxRecord extends EscherRecord
Holds data from the parent application. Most commonly used to store text in the format of the parent application, rather than in Escher format. We don't attempt to understand the contents, since they will be in the parent's format, not Escher format.- Author:
- Glen Stampoultzis (glens at apache.org), Nick Burch (nick at torchbox dot com)
-
-
Field Summary
Fields Modifier and Type Field Description static String
RECORD_DESCRIPTION
static short
RECORD_ID
-
Constructor Summary
Constructors Constructor Description EscherTextboxRecord()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Object
clone()
Escher records may need to be clonable in the future.int
fillFields(byte[] data, int offset, EscherRecordFactory recordFactory)
This method deserializes the record from a byte array.byte[]
getData()
Returns any extra data associated with this record.String
getRecordName()
The short name for this recordint
getRecordSize()
Returns the number of bytes that are required to serialize this record.int
serialize(int offset, byte[] data, EscherSerializationListener listener)
Writes this record and any contained records to the supplied byte array.void
setData(byte[] b)
void
setData(byte[] b, int start, int length)
Sets the extra data (in the parent application's format) to be contained by the record.String
toString()
-
Methods inherited from class loci.poi.ddf.EscherRecord
display, fillFields, getChild, getChildRecords, getInstance, getOptions, getRecordId, isContainerRecord, readHeader, serialize, serialize, setChildRecords, setOptions, setRecordId
-
-
-
-
Field Detail
-
RECORD_ID
public static final short RECORD_ID
- See Also:
- Constant Field Values
-
RECORD_DESCRIPTION
public static final String RECORD_DESCRIPTION
- See Also:
- Constant Field Values
-
-
Method Detail
-
fillFields
public int fillFields(byte[] data, int offset, EscherRecordFactory recordFactory)
This method deserializes the record from a byte array.- Specified by:
fillFields
in classEscherRecord
- Parameters:
data
- The byte array containing the escher record informationoffset
- The starting offset intodata
.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)
Writes this record and any contained records to the supplied byte array.- Specified by:
serialize
in classEscherRecord
- Parameters:
offset
- the offset within the byte arraydata
- the data array to serialize tolistener
- a listener for begin and end serialization events. This is useful because the serialization is hierarchical/recursive and sometimes you need to be able break into that.- Returns:
- the number of bytes written.
-
getData
public byte[] getData()
Returns any extra data associated with this record. In practice excel does not seem to put anything here, but with PowerPoint this will contain the bytes that make up a TextHeaderAtom followed by a TextBytesAtom/TextCharsAtom
-
setData
public void setData(byte[] b, int start, int length)
Sets the extra data (in the parent application's format) to be contained by the record. Used when the parent application changes the contents.
-
setData
public void setData(byte[] b)
-
getRecordSize
public int getRecordSize()
Returns the number of bytes that are required to serialize this record.- Specified by:
getRecordSize
in classEscherRecord
- Returns:
- Number of bytes
-
clone
public Object clone()
Description copied from class:EscherRecord
Escher records may need to be clonable in the future.- Overrides:
clone
in classEscherRecord
-
getRecordName
public String getRecordName()
The short name for this record- Specified by:
getRecordName
in classEscherRecord
-
-