Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
A small utility to get the colors of an image.
Ruby
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
bin
features
lib
spec
.gitignore
.rspec
.rvmrc
Gemfile
Gemfile.lock
Rakefile
Readme.md
colorant.gemspec
specs.watchr

Readme.md

colorant

Colorant is a small utility to determine which colors are present in a particular image, and how much they appear. It wraps ImageMagick's convert command, so it has to be installed on the system.

Usage

Just put it in your Gemfile:

gem "colorant"

And wherever you want, you only need a filename, and you get an array of color percentual frequencies of your image.

Colorant.process "path/to/my/leaves.jpg"
# => [["Brown", 78.95], ["Green", 3.85], ...]

These are other options you can specify:

Colorant.process "file", :colors => 5,      # Default is 8
                         :depth => 24,      # Default is 16
                         :extended => true  # Use more accurate color names

# => [["Vanilla Brown", 78.95], ["Lime Green", 3.85], ...] (up to 5 colors)

Command Line Usage

You can also use colorant from the command line. It is simple:

gem install colorant
colorant path/to/my/photo.jpg --colors 9 --extended

And the output:

  Cocoa Brown       -- 40.54 %
  Moccaccino Red        -- 17.88 %
  Rock Brown        -- 12.76 %
  ... 

The options you can use are the same as the above explained, just with the CLI-like format.

Note on Patches/Pull Requests

  • Fork the project.
  • Make your feature addition or bug fix.
  • Add specs for it. This is important so I don't break it in a future version unintentionally.
  • Commit, do not mess with rakefile, version, or history. If you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull.
  • Send me a pull request. Bonus points for topic branches.

Copyright

Copyright (c) 2010 Codegram. See LICENSE for details.

Something went wrong with that request. Please try again.