bitmaps-0.2.6.3: Bitmap library

Safe HaskellNone
LanguageHaskell2010

Data.Bitmap.Types

Synopsis

Documentation

type Dimensions i = (i, i) Source

type Coordinates i = (i, i) Source

data Depth Source

These are the color depths that the bitmap class supports

The depth does not necessarily indicate any particular order; instead the components listed in the name indicate which components are contained in each pixel.

The order in which the constructors are defined is significant; it determines which match mostLikelyMatchCBF will choose.

Constructors

Depth24RGB

24 bit pixel consisting of one pixel per component and lacking an alpha component

Each pixel of this type thus requires three bytes to be fully represented. Implementations are not required to pack the image data, however; they are free, for instance, to store each pixel in 32-bit (4-byte) integers.

Depth32RGBA

32 bit pixel also consisting of one pixel per component but contains the alpha component

Four bytes are needed for pixels of this type to be fully represented.

data CompleteBitmapFormat Source

Formats that bitmaps that are instances of the Bitmap class need to support; these formats include the necessary meta-information

Constructors

CBF_BMPIU

Uncompressed BITMAPINFOHEADER BMP format (CompleteBitmapFormat_BitMaPInfoheaderUncompressed)

The image format of this format is IBF_BGR24A4VR

Due to being uncompressed, strings encoded in this format can grow large quite quickly. This format is standard and widely supported, and can be written directly to a file, the extension of which is typically ".bmp"

This format is one possible format for "bmp" files.

CBF_BMPIU64

Same as CBF_BMPIU except that that final result is base-64 encoded and is thus suitable for human-readable strings defining a small bitmap (CompleteBitmapFormat_BitMaPInfoheaderUncompressed)

Like CBF_BMPIU, strings encoded in this format can become large quick quickly, and even about a third more so, due to the more restrictive range of values.

CBF_BMPIUZ64 
CBF_BMPIUU

Similar to CBF_BMPIU, but internally the pixel data is stored in the IBF_BGRU32VR format instead of IBF_BGR24A4VR

This format is another common format of "bmp" files.

data ImageBitmapFormat Source

Formats for raw image data that don't include information such as dimensions

Constructors

IBF_IDRGB24Z64

Series of red, green, and blue; the string is compressed and then base-64 encoded; the encoded string is prepended with an m for simpler identification

IBF_IDBGR24R2RZ64

Series of blue, green, and red, that is rotated two bytes right; the string is compressed and then base-64 encoded; the encoded string is prepended with a b for simpler identification

IBF_IDBGR24HZH

Series of red, green, and blue; the string is hex encoded, then compressed, then hex encoded again; the encoded string is prepended with with z

IBF_IDRGB32Z64

Series of unused byte, red, green, and blue; the string is compressed and then base-64 encoded; identified by an l character

IBF_BGR24H

Series of red, green, and blue, represented as a series of hexadecimal pairs

IBF_BGR24A4VR

Series of blue, green, red, blue, etc. with a row alignment of 4, stored upside-down

IBF_BGRU32VR

Series of blue, green, red, unused, blue, etc. stored upside-down (already aligned to a 4-byte boundary)

IBF_BGRU32

Series of blue, green, red, unused, blue, etc. (already aligned to a 4-byte boundary)

IBF_RGB24A4VR

Series of red, green, blue, red, etc. with a row alignment of 4, stored upside-down

IBF_RGB24A4

Series of red, green, blue, red, etc. with a row alignment of 4

IBF_RGB32

Series of unused byte, red, green, and blue

IBF_RGB32Z64

Series of unused byte, red, green, and blue; the string is compressed and then base-64 encoded