GuiBitmapBuffer class
The GuiBitmapBuffer class provides an interface for creating custom 24-bit or 32-bit bitmaps and flutter image
Constructors
- GuiBitmapBuffer.new({required int width, required int height, int bitsPerPixel = bitsPerPixelArgb})
- Create a bitmap buffer with header prepopulated with necessary data. The actual image data must still be populated by the user.
Properties
- bitsPerPixel → int
-
Number of bits per pixel (ie. 24 for 24-bit RGB pixel, 32 for for ARGB pixel w/ transparency)
final
- bytesPerPixel → int
-
of bytes required to render a pixel (informational only)
no setter
- hashCode → int
-
The hash code for this object.
no setterinherited
- headerOffset → int
-
Starting offset of Bitmap header
no setter
- height → int
-
Height of bitmap image in pixels
final
- imageData → Uint8List
-
Raw bitmap data
no setter
- imageOffset → int
-
Starting offset of Bitmap data
no setter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- width → int
-
The structure of a Bitmap Buffer is defined below:
Reference Documentation: https://en.wikipedia.org/wiki/BMP_file_format
bitmap file header : (14 bytes)
WORD bfType; //
0-1
'B' 'M' DWORD bfSize; //2-5
Size of File (headers + data) - little endian WORD bfReserved1; //6-7
0 , 0 WORD bfReserved2; //8-9
0 , 0 DWORD bfOffBits; //10-13
54 bitmap info header : (40 bytes) DWORD biSize; //14-17
40 LONG biWidth; //18-21
width of image LONG biHeight; //22-25
height of image WORD biPlanes; //26-27
# of planes = 1 WORD biBitCount; //28-29
# of bits per pixel DWORD biCompression; //30-33
DWORD biSizeImage; //34-37
size of bitmap image (# of pixels * bytes per pixel) LONG biXPelsPerMeter; //38-41
the horizontal resolution of the image. (pixel per metre, signed integer) (200 dpi = 7874) LONG biYPelsPerMeter; //42-45
the vertical resolution of the image. (pixel per metre, signed integer) (200 dpi = 7874) DWORD biClrUsed; //46-49
the number of colors in the color palette, or 0 to default to 2n DWORD biClrImportant; //50-53
the number of important colors used, or 0 when every color is important; generally ignored bitmap data : (size of bitmap image) BYTE bdData //...
data for image is ordered from bottom of image to top of image. Row N Row N-1 ... ... Row 2 Row 1 Width of bitmap image in pixelsfinal
Methods
-
imageRowOffset(
int row) → int -
Starting offset of Bitmap image for row
row
(zero-based) -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toImage(
) → Image - Convert Bitmap buffer into a Flutter Image widget.
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Constants
- bitsPerPixelArgb → const int
- Constant for 32-bit pixel w/ ARGB value
- bitsPerPixelRgb → const int
- Constant for 24-bit pixel w/ RGB value