UNPKG

@mescius/dsimageviewer

Version:

Document Solutions Image Viewer

93 lines (92 loc) 2.25 kB
/// <reference types="node" /> declare const enum Compression { NONE = 0, BI_RLE8 = 1, BI_RLE4 = 2, BI_BIT_FIELDS = 3, BI_ALPHA_BIT_FIELDS = 6 } declare interface IColor { red: number; green: number; blue: number; quad: number; } declare interface IDecoderOptions { toRGBA?: boolean; } declare interface IImage { flag: string; fileSize: number; reserved1?: number; reserved2?: number; offset: number; headerSize: number; width: number; height: number; planes?: number; bitPP: number; compression?: Compression; rawSize: number; hr?: number; vr?: number; colors?: number; importantColors?: number; palette?: IColor[]; data: Buffer; } export declare function maskColor(maskRed: number, maskGreen: number, maskBlue: number, maskAlpha: number): { shiftRed: (x: number) => number; shiftGreen: (x: number) => number; shiftBlue: (x: number) => number; shiftAlpha: (x: number) => number; }; export default class BmpDecoder implements IImage { flag: string; fileSize: number; reserved1: number; reserved2: number; offset: number; headerSize: number; width: number; height: number; planes: number; bitPP: number; compression?: Compression; rawSize: number; hr: number; vr: number; colors: number; importantColors: number; palette: IColor[]; data: Buffer; private maskRed; private maskGreen; private maskBlue; private maskAlpha; private readonly toRGBA; private pos; private bottomUp; private readonly buffer; private readonly locRed; private readonly locGreen; private readonly locBlue; private readonly locAlpha; private shiftRed; private shiftGreen; private shiftBlue; private shiftAlpha; constructor(buffer: Buffer, { toRGBA }?: IDecoderOptions); private parseHeader; private parseRGBA; private bit1; private bit4; private bit8; private bit16; private bit24; private bit32; private scanImage; private readUInt32LE; private setPixelData; } export {};