core/image/png

png

Types

22

Signature

Signature :: enum u64be { // 0x89504e470d0a1a0a PNG = 0x89 << 56 | 'P' << 48 | 'N' << 40 | 'G' << 32 | '\r' << 24 | '\n' << 16 | 0x1a << 8 | '\n', }Source

Constants

6

MAX_CHUNK_SIZE

MAX_CHUNK_SIZE :: min(#config(PNG_MAX_CHUNK_SIZE, 16_777_216), 268_435_456)Source

For chunks other than IDAT with a variable size like zTXT and eXIf,

limit their size to 16 MiB each by default. Max of 256 MiB each.

_MAX_IDAT_DEFAULT

_MAX_IDAT_DEFAULT :: ( 8192 /* Width */ * 8192 /* Height */ * 2 /* 16-bit */) + 8192Source

Limit chunk sizes. By default: IDAT = 8k x 8k x 16-bits + 8k filter bytes. The total number of pixels defaults to 64 Megapixel and can be tuned in image/common.odin.

Variables

4

Procedures

32

destroy

destroy :: proc(img: ^Image)Source

Cleanup of image-specific data.

There are other helpers for cleanup of PNG-specific data.
	Those are named *_destroy, where * is the name of the helper.

Procedure Groups

1

Reference search

Find anything

Documentation preferences

Settings

System theme variants

Used only while Theme is set to System.