Rubygem to find the closest color from a given palette.
This was created to help migrate Twitter's Advertising webapp from more than a thousand different colors into a small well-considered palette of colors.
Both the CIE76 color difference algorithm, via
Shade::Palette.nearest_value
, and the
CIE94 color difference algorithm, via
Shade::Palette.nearest_value_cie94
implementations are available.
The CIE94 implementation is slower, but may have better results, as saturation perception is better accounted for in that algorithm.
Add this line to your application's Gemfile:
gem 'shade'
And then execute:
$ bundle
Or install it yourself as:
$ gem install shade
p = Shade::Palette.new do |p|
p.add('#663399', 'deepPurple')
p.add('#5BA636', 'darkGreen')
end
p.nearest_value('green')
=> #<struct Shade::Palette::Value name="#5BA636", css_color="darkGreen">
- Fork it ( https://github.com/mceachen/shade/fork )
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request