Language

The Free and Open Productivity Suite
Released: Apache OpenOffice 4.1.15

:: com :: sun :: star :: rendering ::

unpublished interface XIntegerBitmap
Base Interfaces
XIntegerBitmapXBitmap
   ┗ ::com::sun::star::uno::XInterface

XBitmap
(referenced interface's summary:)
This is a generic interface to a bitmap.
Description
This is a specialized interface for bitmaps having integer color channels.

Methods' Summary
getData Query the raw data of this bitmap.  
setData Set raw data of a bitmap. Set raw data of a bitmap, in the format as defined by getMemoryLayout(). With the given rectangle, a subset of the bitmap can be changed. If the internal data format's pixel are not integer multiples of bytes (i.e. if one pixel occupies less than a byte), the leftover content of the bytes at the right of each scanline is ignored and left unchanged in the bitmap. When setting subsets of the bitmap, the same scanline padding takes place as when the whole bitmap is changed.  
setPixel Set a single pixel of the bitmap with the given color value. If the internal data format's pixel are not integer multiples of bytes (i.e. if one pixel occupies less than a byte), the color value is expected in the least significant bits of the single byte given as the color.  
getPixel Get a single pixel of the bitmap, returning its color value. If the internal data format's pixel are not integer multiples of bytes (i.e. if one pixel occupies less than a byte), the color value is returned in the least significant bits of the single byte returned as the color. Note that the bitmap memory layout might change for volatile bitmaps.  
getPalette Query the associated palette for this bitmap. Returns empty interface or interface with empty palette for non-paletted bitmaps.  
getMemoryLayout Query the memory layout for this bitmap.  
Methods' Details
getData
sequence< byte >
getData( [out] IntegerBitmapLayout  bitmapLayout,
[in] ::com::sun::star::geometry::IntegerRectangle2D  rect )
raises( ::com::sun::star::lang::IndexOutOfBoundsException,
VolatileContentDestroyedException );

Description
Query the raw data of this bitmap.

Query the raw data of this bitmap, in the format as defined by getMemoryLayout(). With the given rectangle, a subset of the whole bitmap can be queried. If the internal data format's pixel are not integer multiples of bytes (i.e. if one pixel occupies less than a byte), the leftover content of the bytes at the right of each scanline is filled with zero. When querying subsets of the bitmap, the same scanline padding takes place as when the whole bitmap is requested.

Note that the bitmap memory layout might change for volatile bitmaps.

Parameter bitmapLayout
The memory layout the returned data is in.
Parameter rect
A rectangle, within the bounds of the bitmap, to retrieve the contens from.
Throws
VolatileContentDestroyedException if the bitmap is volatile, and the content has been destroyed by the system.
Throws
com::sun::star::lang::IndexOutOfBoundsException if parts of the given rectangle are outside the permissible bitmap area.
setData
void
setData( [in] sequence< byte >  data,
[in] IntegerBitmapLayout  bitmapLayout,
[in] ::com::sun::star::geometry::IntegerRectangle2D  rect )
raises( ::com::sun::star::lang::IllegalArgumentException,
::com::sun::star::lang::IndexOutOfBoundsException );

Description
Set raw data of a bitmap. Set raw data of a bitmap, in the format as defined by getMemoryLayout(). With the given rectangle, a subset of the bitmap can be changed. If the internal data format's pixel are not integer multiples of bytes (i.e. if one pixel occupies less than a byte), the leftover content of the bytes at the right of each scanline is ignored and left unchanged in the bitmap. When setting subsets of the bitmap, the same scanline padding takes place as when the whole bitmap is changed.

When setting data on volatile bitmaps, always call isValid() before, and retrieve a new memory layout via getMemoryLayout(). At least under Windows, the memory layout can change for the same bitmap, if the user e.g. switches the screen resolution. Thus, this method will throw an IllegalArgumentException, if the memory layout changed between a call to getMemoryLayout() and setData().

Parameter data
Data to set
Parameter bitmapLayout
Layout of the data to set. Must match this bitmap's current layout.
Parameter rect
Destination rectangle, within the bounds of the bitmap, to set the data in.
Throws
com::sun::star::lang::IndexOutOfBoundsException if parts of the given rectangle are outside the permissible bitmap area.
Throws
com::sun::star::lang::IllegalArgumentException if the given memory layout does not match this bitmap's layout, or if the given data sequence has too few or too much elements.
setPixel
void
setPixel( [in] sequence< byte >  color,
[in] IntegerBitmapLayout  bitmapLayout,
[in] ::com::sun::star::geometry::IntegerPoint2D  pos )
raises( ::com::sun::star::lang::IllegalArgumentException,
::com::sun::star::lang::IndexOutOfBoundsException );

Description
Set a single pixel of the bitmap with the given color value. If the internal data format's pixel are not integer multiples of bytes (i.e. if one pixel occupies less than a byte), the color value is expected in the least significant bits of the single byte given as the color.

When setting data on volatile bitmaps, always call isValid() before, and retrieve a new memory layout via getMemoryLayout(). At least under Windows, the memory layout can change for the same bitmap, if the user e.g. switches the screen resolution. Thus, this method will throw an IllegalArgumentException, if the memory layout changed between a call to getMemoryLayout() and setPixel().

Parameter color
The color value(s) to set
Parameter bitmapLayout
Layout of the color elements to set. Must match this bitmap's current layout.
Parameter pos
Pixel position with the bounds of the bitmap to set.
Throws
com::sun::star::lang::IndexOutOfBoundsException if the given point is outside the permissible bitmap area.
Throws
com::sun::star::lang::IllegalArgumentException if the given memory layout does not match this bitmap's layout, or if the given data sequence has too few or too much elements.
getPixel
sequence< byte >
getPixel( [out] IntegerBitmapLayout  bitmapLayout,
[in] ::com::sun::star::geometry::IntegerPoint2D  pos )
raises( ::com::sun::star::lang::IndexOutOfBoundsException,
VolatileContentDestroyedException );

Description
Get a single pixel of the bitmap, returning its color value. If the internal data format's pixel are not integer multiples of bytes (i.e. if one pixel occupies less than a byte), the color value is returned in the least significant bits of the single byte returned as the color. Note that the bitmap memory layout might change for volatile bitmaps.

Parameter bitmapLayout
The memory layout the returned data is in.
Parameter pos
A position, within the bounds of the bitmap, to retrieve the color from.
Throws
VolatileContentDestroyedException if the bitmap is volatile, and the content has been destroyed by the system.
Throws
com::sun::star::lang::IndexOutOfBoundsException if the given position is outside the permissible bitmap area.
getPalette
XBitmapPalette
getPalette();

Description
Query the associated palette for this bitmap. Returns empty interface or interface with empty palette for non-paletted bitmaps.
getMemoryLayout
IntegerBitmapLayout
getMemoryLayout();

Description
Query the memory layout for this bitmap.

Please note that for volatile bitmaps, the memory layout might change between subsequent calls.

Top of Page

Apache Software Foundation

Copyright & License | Privacy | Contact Us | Donate | Thanks

Apache, OpenOffice, OpenOffice.org and the seagull logo are registered trademarks of The Apache Software Foundation. The Apache feather logo is a trademark of The Apache Software Foundation. Other names appearing on the site may be trademarks of their respective owners.