colour-2.3.3: A model for human colour/color perception

Safe HaskellSafe-Inferred
LanguageHaskell98

Data.Colour.SRGB

Description

Specifies Colours in accordance with the sRGB standard.

Synopsis

Documentation

data Colour a Source

This type represents the human preception of colour. The a parameter is a numeric type used internally for the representation.

The Monoid instance allows one to add colours, but beware that adding colours can take you out of gamut. Consider using blend whenever possible.

Instances

ColourOps Colour 
AffineSpace Colour 
Eq a => Eq (Colour a) 
(Fractional a, Read a) => Read (Colour a) 
(Fractional a, Show a) => Show (Colour a) 
Num a => Monoid (Colour a) 

data RGB a Source

An RGB triple for an unspecified colour space.

Constructors

RGB 

Fields

channelRed :: !a
 
channelGreen :: !a
 
channelBlue :: !a
 

Instances

Functor RGB 
Applicative RGB 
Eq a => Eq (RGB a) 
Read a => Read (RGB a) 
Show a => Show (RGB a) 

sRGB24 :: (Ord b, Floating b) => Word8 -> Word8 -> Word8 -> Colour b Source

Construct a colour from a 24-bit (three 8-bit words) sRGB specification.

sRGBBounded :: (Ord b, Floating b, Integral a, Bounded a) => a -> a -> a -> Colour b Source

Construct a colour from an sRGB specification. Input components are expected to be in the range [0..maxBound].

sRGB :: (Ord b, Floating b) => b -> b -> b -> Colour b Source

Construct a colour from an sRGB specification. Input components are expected to be in the range [0..1].

toSRGB24 :: (RealFrac b, Floating b) => Colour b -> RGB Word8 Source

Return the approximate 24-bit sRGB colour components as three 8-bit components. Out of range values are clamped.

toSRGBBounded :: (RealFrac b, Floating b, Integral a, Bounded a) => Colour b -> RGB a Source

Return the approximate sRGB colour components in the range [0..maxBound]. Out of range values are clamped.

toSRGB :: (Ord b, Floating b) => Colour b -> RGB b Source

Return the sRGB colour components in the range [0..1].

sRGB24shows :: (RealFrac b, Floating b) => Colour b -> ShowS Source

Show a colour in hexadecimal form, e.g. "#00aaff"

sRGB24show :: (RealFrac b, Floating b) => Colour b -> String Source

Show a colour in hexadecimal form, e.g. "#00aaff"

sRGB24reads :: (Ord b, Floating b) => ReadS (Colour b) Source

Read a colour in hexadecimal form, e.g. "#00aaff" or "00aaff"

sRGB24read :: (Ord b, Floating b) => String -> Colour b Source

Read a colour in hexadecimal form, e.g. "#00aaff" or "00aaff"

sRGBSpace :: (Ord a, Floating a) => RGBSpace a Source

The sRGB colour space