Class Thumbnail
- java.lang.Object
-
- org.apache.poi.hpsf.Thumbnail
-
public final class Thumbnail extends java.lang.Object
Class to manipulate data in the Clipboard Variant (
VT_CF
) format.
-
-
Field Summary
Fields Modifier and Type Field Description static int
CF_BITMAP
Clipboard Format - Bitmapstatic int
CF_DIB
Clipboard Format - Device Independent Bitmapstatic int
CF_ENHMETAFILE
Clipboard Format - Enhanced Windows metafile formatstatic int
CF_METAFILEPICT
Clipboard Format - Windows metafile format.static int
CFTAG_FMTID
Clipboard Format Tag - Format IDstatic int
CFTAG_MACINTOSH
Clipboard Format Tag - Macintosh clipboard formatstatic int
CFTAG_NODATA
Clipboard Format Tag - No Datastatic int
CFTAG_WINDOWS
Clipboard Format Tag - Windows clipboard formatstatic int
OFFSET_CF
Offset in bytes where the Clipboard Format starts in thebyte[]
returned bySummaryInformation.getThumbnail()
static int
OFFSET_CFTAG
Offset in bytes where the Clipboard Format Tag starts in thebyte[]
returned bySummaryInformation.getThumbnail()
static int
OFFSET_WMFDATA
Offset in bytes where the Windows Metafile (WMF) image data starts in thebyte[]
returned bySummaryInformation.getThumbnail()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description long
getClipboardFormat()
Returns anint
representing the Clipboard Formatlong
getClipboardFormatTag()
Returns anint
representing the Clipboard Format Tagbyte[]
getThumbnail()
Returns the thumbnail as abyte[]
inVT_CF
format.byte[]
getThumbnailAsWMF()
Returns the Thumbnail as abyte[]
of WMF data if the Thumbnail's Clipboard Format Tag isCFTAG_WINDOWS
and its Clipboard Format isCF_METAFILEPICT
void
setThumbnail(byte[] thumbnail)
Sets the Thumbnail's underlyingbyte[]
inVT_CF
format.
-
-
-
Field Detail
-
OFFSET_CFTAG
public static final int OFFSET_CFTAG
Offset in bytes where the Clipboard Format Tag starts in the
byte[]
returned bySummaryInformation.getThumbnail()
- See Also:
- Constant Field Values
-
OFFSET_CF
public static final int OFFSET_CF
Offset in bytes where the Clipboard Format starts in the
byte[]
returned bySummaryInformation.getThumbnail()
This is only valid if the Clipboard Format Tag is
CFTAG_WINDOWS
- See Also:
- Constant Field Values
-
OFFSET_WMFDATA
public static final int OFFSET_WMFDATA
Offset in bytes where the Windows Metafile (WMF) image data starts in the
byte[]
returned bySummaryInformation.getThumbnail()
There is only WMF data at this point in the
byte[]
if the Clipboard Format Tag isCFTAG_WINDOWS
and the Clipboard Format isCF_METAFILEPICT
.Note: The
byte[]
that starts atOFFSET_WMFDATA
and ends atgetThumbnail().length - 1
forms a complete WMF image. It can be saved to disk with a.wmf
file type and read using a WMF-capable image viewer.- See Also:
- Constant Field Values
-
CFTAG_WINDOWS
public static final int CFTAG_WINDOWS
Clipboard Format Tag - Windows clipboard format
A
DWORD
indicating a built-in Windows clipboard format value- See Also:
- Constant Field Values
-
CFTAG_MACINTOSH
public static final int CFTAG_MACINTOSH
Clipboard Format Tag - Macintosh clipboard format
A
DWORD
indicating a Macintosh clipboard format value- See Also:
- Constant Field Values
-
CFTAG_FMTID
public static final int CFTAG_FMTID
Clipboard Format Tag - Format ID
A GUID containing a format identifier (FMTID). This is rarely used.
- See Also:
- Constant Field Values
-
CFTAG_NODATA
public static final int CFTAG_NODATA
Clipboard Format Tag - No Data
A
DWORD
indicating No data. This is rarely used.- See Also:
- Constant Field Values
-
CF_METAFILEPICT
public static final int CF_METAFILEPICT
Clipboard Format - Windows metafile format. This is the recommended way to store thumbnails in Property Streams.
Note: This is not the same format used in regular WMF images. The clipboard version of this format has an extra clipboard-specific header.
- See Also:
- Constant Field Values
-
CF_DIB
public static final int CF_DIB
Clipboard Format - Device Independent Bitmap
- See Also:
- Constant Field Values
-
CF_ENHMETAFILE
public static final int CF_ENHMETAFILE
Clipboard Format - Enhanced Windows metafile format
- See Also:
- Constant Field Values
-
CF_BITMAP
public static final int CF_BITMAP
Clipboard Format - Bitmap
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
Thumbnail
public Thumbnail()
Default Constructor. If you use it then one you'll have to add the thumbnail
byte[]
fromSummaryInformation.getThumbnail()
to do any useful manipulations, otherwise you'll get aNullPointerException
.
-
Thumbnail
public Thumbnail(byte[] thumbnailData)
Creates a
Thumbnail
instance and initializes with the specified image bytes.- Parameters:
thumbnailData
- The thumbnail data
-
-
Method Detail
-
getThumbnail
public byte[] getThumbnail()
Returns the thumbnail as a
byte[]
inVT_CF
format.- Returns:
- The thumbnail value
- See Also:
SummaryInformation.getThumbnail()
-
setThumbnail
public void setThumbnail(byte[] thumbnail)
Sets the Thumbnail's underlying
byte[]
inVT_CF
format.- Parameters:
thumbnail
- The new thumbnail value- See Also:
SummaryInformation.getThumbnail()
-
getClipboardFormatTag
public long getClipboardFormatTag()
Returns an
int
representing the Clipboard Format TagPossible return values are:
- Returns:
- A flag indicating the Clipboard Format Tag
-
getClipboardFormat
public long getClipboardFormat() throws HPSFException
Returns an
int
representing the Clipboard FormatWill throw an exception if the Thumbnail's Clipboard Format Tag is not
CFTAG_WINDOWS
.Possible return values are:
- Returns:
- a flag indicating the Clipboard Format
- Throws:
HPSFException
- if the Thumbnail isn't CFTAG_WINDOWS
-
getThumbnailAsWMF
public byte[] getThumbnailAsWMF() throws HPSFException
Returns the Thumbnail as a
byte[]
of WMF data if the Thumbnail's Clipboard Format Tag isCFTAG_WINDOWS
and its Clipboard Format isCF_METAFILEPICT
This
byte[]
is in the traditional WMF file, not the clipboard-specific version with special headers.See http://www.wvware.com/caolan/ora-wmf.html for more information on the WMF image format.
- Returns:
- A WMF image of the Thumbnail
- Throws:
HPSFException
- if the Thumbnail isn't CFTAG_WINDOWS and CF_METAFILEPICT
-
-