@wokwi/bmp-ts
Version:
A pure TypeScript BMP encoder and decoder
51 lines (50 loc) • 1.33 kB
TypeScript
import { BitsPerPixel, Compression, IBitmapImage, IColor, IDecoderOptions } from './types';
export default class BmpDecoder implements IBitmapImage {
flag: string;
fileSize: number;
reserved1: number;
reserved2: number;
offset: number;
headerSize: number;
width: number;
height: number;
planes: number;
bitPP: BitsPerPixel;
compression?: Compression;
rawSize: number;
hr: number;
vr: number;
colors: number;
importantColors: number;
palette: IColor[];
data: Uint8Array;
private maskRed;
private maskGreen;
private maskBlue;
private maskAlpha;
private readonly toRGBA;
private pos;
private bottomUp;
private readonly buffer;
private readonly bufferView;
private readonly locRed;
private readonly locGreen;
private readonly locBlue;
private readonly locAlpha;
private shiftRed;
private shiftGreen;
private shiftBlue;
private shiftAlpha;
constructor(buffer: Uint8Array, { toRGBA }?: IDecoderOptions);
private parseHeader;
private parseRGBA;
private bit1;
private bit4;
private bit8;
private bit16;
private bit24;
private bit32;
private scanImage;
private readUInt32LE;
private setPixelData;
}