Language

The Free and Open Productivity Suite
Released: Apache OpenOffice 4.1.15

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

unpublished struct IntegerBitmapLayout
Description
This structure describes the memory layout of a bitmap having integer color channels.

This structure collects all necessary information to describe the memory layout of a bitmap having integer color channels

Since
OOo 2.0.0

Elements' Summary
ScanLines Number of scanlines for this bitmap. This value must not be negative  
ScanLineBytes Number of data bytes per scanline. This value must not be negative  
ScanLineStride Byte offset between the start of two consecutive scanlines. This value is permitted to be negative, denoting a bitmap whose content is flipped at the x axis.  
PlaneStride Byte offset between the start of two consecutive planes. This value is permitted to be negative.  
ColorSpace Color space the bitmap colors shall be interpreted within.  
NumComponents Number of color components per pixel. This value must not be negative  
ComponentMasks Mask values for packed bitmaps This member contains NumComponents 64 bit masks, which can be used to mask out the corresponding color component from the bitmap data. For the typical 32 bit RGBA color data, the four mask values would look like 0xFF000000, 0x00FF0000, 0x0000FF00, and 0x000000FF.  
Palette This member determines whether the bitmap data are actually indices into a color map.  
Endianness Endianness of the pixel values. This value must be one of the Endianness constants  
Format Format type of this bitmap.  
IsMsbFirst This member determines the bit order (only relevant if a pixel uses less than 8 bits, of course).  
Elements' Details
ScanLines
long ScanLines;
Description
Number of scanlines for this bitmap. This value must not be negative
ScanLineBytes
long ScanLineBytes;
Description
Number of data bytes per scanline. This value must not be negative
ScanLineStride
long ScanLineStride;
Description
Byte offset between the start of two consecutive scanlines. This value is permitted to be negative, denoting a bitmap whose content is flipped at the x axis.
PlaneStride
long PlaneStride;
Description
Byte offset between the start of two consecutive planes. This value is permitted to be negative.
ColorSpace
XColorSpace ColorSpace;
Description
Color space the bitmap colors shall be interpreted within.
NumComponents
long NumComponents;
Description
Number of color components per pixel. This value must not be negative
ComponentMasks
sequence< hyper > ComponentMasks;
Description
Mask values for packed bitmaps This member contains NumComponents 64 bit masks, which can be used to mask out the corresponding color component from the bitmap data. For the typical 32 bit RGBA color data, the four mask values would look like 0xFF000000, 0x00FF0000, 0x0000FF00, and 0x000000FF.
Palette
XBitmapPalette Palette;
Description
This member determines whether the bitmap data are actually indices into a color map.

When set to the nil reference, the bitmap data is assumed to contain direct color values (to be interpreted according to the associated color space).

Endianness
byte Endianness;
Description
Endianness of the pixel values. This value must be one of the Endianness constants
Format
byte Format;
Description
Format type of this bitmap.

This value must be one of the IntegerBitmapFormat constants. The precise layout of the color channels within a bitmap pixel is further specified via the ComponentMasks member.

IsMsbFirst
boolean IsMsbFirst;
Description
This member determines the bit order (only relevant if a pixel uses less than 8 bits, of course).

When , this member denotes that the leftmost pixel from an 8 bit amount of pixel data consists of the bits starting with the most significant bit. When , it's starting with the least significant bit.

Example: for a 1bpp bitmap, each pixel is represented by exactly one bit. If this member is , the first pixel is the MSB of the first byte, and the eighth pixel is the LSB of the first byte. If this member is , it's just the opposite.

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.