Decodes a PGM (P2, P5) to GRAY8 or a PPM (P3, P6) to RGB8. Samples are scaled to 8 bits.
image, ok := decode_pnm(cast([] u8) "P2\n2 1\n255\n0 255\n");
defer deinit(*image);
assert(ok && image.format == .GRAY8 && image.pixels[1] == 255);decode_pnm :: (
data: [] u8,
max_pixels: s64 = DEFAULT_MAX_PIXELS
) -> (image: Image, ok: bool, error: string)
Parameters
- data: [] u8
- max_pixels: s64 = DEFAULT_MAX_PIXELS
Returns
- image: Image
- ok: bool
- error: string