prizm: Color transformations in different color spaces

[ bsd3, graphics, library ] [ Propose Tags ]
This version is deprecated.

prizm is a Haskell library for transforming colors. Specifically, providing functions for transforming between different color spaces (CIE and sRGB), interpolating colors and adjusting the tint, shade, hue, or lightness or a color.

The inspiration for this library came from a desire to blend two colors represented in the sRGB color space. My research about color blending and color space representation in the computer led me to the conclusion that the CIE L*Ch color space is the most effective for blending because it most accurately represents how the human eye sees hue and therefore preserves (and blends) hue the most accurately.

Colour Module

There is a bit of overlap with the Haskell Colour Module; however, this library is filling a couple of needs the other doesn't satisfy. Primarily transformations and color mutations in the CIE L*Ch space.

Supported Algorithms & Functions

All of these functions operate on color within the CIE L*Ch color space. The percentage values may range between -100 and 100.

  • sRGB     - CIE XYZ
  • CIE XYZ  - CIE L*ab
  • CIE L*ab - CIE L*Ch
  • Color interpolation

  • Tinting / Darkening

  • Lightness

  • Hue

  • Chroma/Saturation

Formulas, Resources, and Links


[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1.0.0, 0.1.0.1, 0.1.0.2, 0.1.0.3, 0.1.0.4, 0.2.0.0, 0.2.1.0, 0.3.0.0, 0.3.1.0, 0.3.1.1, 0.3.1.2, 1.0.0, 1.0.1, 1.0.2, 1.0.3, 1.0.4, 1.0.5, 1.1.0, 2.0.0, 2.0.1, 3.0.0 (info)
Dependencies base (>=4.5 && <5), convertible (>=1.1), mono-traversable (>=1.0), text (>=0.11.2.3) [details]
License BSD-3-Clause
Copyright (c) 2013 Parnell Springmeyer
Author Parnell Springmeyer
Maintainer parnell+hackage@digitalmentat.com
Category Graphics
Home page https://github.com/ixmatus/prizm
Bug tracker https://github.com/ixmatus/prizm/issues
Source repo head: git clone https://github.com/ixmatus/prizm
Uploaded by ParnellSpringmeyer at 2017-03-13T15:25:54Z
Distributions NixOS:3.0.0
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 11155 total (52 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2017-03-13 [all 1 reports]

Readme for prizm-1.0.4

[back to package description]

Welcome!

Hackage Version Travis CI Status

prizm is a Haskell library for transforming colors. Specifically, providing functions for transforming between different color spaces (CIE and sRGB), interpolating colors and adjusting the tint, shade, hue, or lightness or a color.

The inspiration for this library came from a desire to blend two colors represented in the sRGB color space. My research about color blending and color space representation in the computer led me to the conclusion that the CIE L*Ch color space is the most effective for blending because it most accurately represents how the human eye sees hue and therefore preserves (and blends) hue the most accurately.

Colour Module

There is a bit of overlap with the Haskell Colour Module; however, this library is filling a couple of needs the other doesn't satisfy. Primarily transformations and color mutations in the CIE L*Ch space.

Supported Algorithms

  • sRGB <-> CIE XYZ
  • CIE XYZ <-> CIE L*ab
  • CIE L*ab <-> CIE L*Ch

Supported Functions

  • Color interpolation
  • Tinting / Darkening
  • Lightness
  • Hue
  • Chroma/Saturation

All of these functions operate on color within the CIE L*Ch representation. The percentage values may range between -100 and 100.