text: public int serialize( int offset, byte[] data, EscherSerializationListener listener ) {listener.beforeRecordSerialize(offset, getRecordId(), this);LittleEndian.putShort( data, offset, getOptions() );LittleEndian.putShort( data, offset + 2, getRecordId() );LittleEndian.putInt( data, offset + 4, getRecordSize() - HEADER_SIZE );int pos = offset + HEADER_SIZE;System.arraycopy( field_1_UID, 0, data, pos, 16 );data[pos + 16] = field_2_marker;byte[] pd = getPicturedata();System.arraycopy( pd, 0, data, pos + 17, pd.length );listener.afterRecordSerialize(offset + getRecordSize(), getRecordId(), getRecordSize(), this);return HEADER_SIZE + 16 + 1 + pd.length;}