GIMP Pattern File Format Version 1 (.pat)

Bytes 0  - 3:  header_size:
	Type: 32 bit unsigned int
	Value: size of pattern header (24) + length of pattern name

Bytes 4  - 7: version
	Type: 32 bit unsigned int
	Value: The file format version.

Bytes 8  - 11: width
	Type: 32 bit unsigned int
	Value: Pattern width

Bytes 12 - 15: height
	Type: 32 bit unsigned int
	Value: Pattern height

Bytes 16 - 19: bytes
	Type: 32 bit unsigned int
	Value: Colour depth of pattern
	1 = greyscale, 2 = greyscale + A, 3 = RGB, 4 = RGBA

Bytes 20 - 23: magic_number
	Type: 32 bit unsigned int
	Value: GIMP pattern magic number.
	('G' << 24) + ('P' << 16) + ('A' << 8) + 'T'

Bytes 24 - (header_size - 1):
	Type: char *
	Value: UTF-8 string - name of pattern

BODY

	Size: width * height * bytes
	Type: uchar *
	Value: Pixel values (row-first) for pattern