Skip to content
Branch: master
Go to file
Code

Latest commit

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
src
 
 
 
 
 
 
 
 
 
 

README.md

Crumpets

Build Status

A Clojure library for representing and manipulating color. It's currently usable, but has limited functionality.

Installation

Add the following dependency to your project.clj file:

[crumpets "0.1.4"]

Usage

Crumpets provides types for holding color data:

(require '[crumpets.core :as color])

(def color-red
  (color/rgb 255 0 0))

Colors can also be defined through the #color/rgb reader literal, which supports a variety of formats:

#color/rgb "#ff0000"
#color/rgb [255 0 0]
#color/rgb [1.0 0.0 0.0]

The color data can be representing as a hex string, a vector of integers between 0 and 255, or a vector of floats between 0.0 and 1.0.

Alpha channels can be encoded with the #color/rgba reader literal:

#color/rgba "#ff000099"
#color/rgba [255 0 0 153]

Colors implement the ILookup interface, so you can pull out their values by accessing the :red, :green, :blue and :alpha keys:

(:red color-red)       ;; => 255
(get color-red :blue)  ;; => 0

There's also functions for converting color data to different formats, such as the integer ARGB format that can be used in BufferedImage objects:

(int-argb color-red)  ;; => 0xffff0000

Documentation

License

Copyright © 2013 James Reeves

Distributed under the Eclipse Public License either version 1.0 or (at your option) any later version.

About

Clojure library for dealing with color

Resources

You can’t perform that action at this time.