bitmapInfoHeader(): Coder<BitmapInfoHeader>
Creates a coder for the 40-byte BITMAPINFOHEADER (the most common DIB header).
All fields are little-endian. width and height are signed 32-bit; height
being negative signals a top-down pixel layout.
Round-trip a BITMAPINFOHEADER
Round-trip a BITMAPINFOHEADER
import { assertEquals } from "@std/assert"; import { bitmapInfoHeader } from "@binstruct/bmp"; const coder = bitmapInfoHeader(); const dib = { size: 40, width: 2, height: 2, planes: 1, bpp: 24, compression: 0, imageSize: 16, xPixelsPerMeter: 2835, yPixelsPerMeter: 2835, colorsUsed: 0, importantColors: 0, }; const buffer = new Uint8Array(40); const bytesWritten = coder.encode(dib, buffer); const [decoded, bytesRead] = coder.decode(buffer); assertEquals(bytesWritten, 40); assertEquals(bytesRead, 40); assertEquals(decoded, dib);
Coder<BitmapInfoHeader>
A coder for BitmapInfoHeader.