Give me a color and I will name it.
Naming things is one of the hard things in computer science.
Colornamer-rs is a library written in Rust that helps you come up with a good name for a color.
It does this by converting the color to Lab color space and using the Delta E formula to compare the color difference in a list of colors with known names and finding the nearest neighbor.
Colornamer-rs is available as a crate on crates.io. Add colornamer
to your dependencies with the latest stable version to use the library.
[dependencies]
colornamer = "1.0.1"
extern crate colornamer;
use colornamer::{ColorNamer, Colors};
fn main() {
let colornamer = ColorNamer::new(Colors::HTML);
let name: String = colornamer.name_hex_color("#1E90FF").unwrap()
println!("I will call this color '{}'", name);
}
The color names are derived from several lists:
- roygbiv
- basic
- HTML
- X11
- Pantone
- ntc - an astounding collection of over 1500 named colors.
This library is based on the wonderful color-namer library for nodejs.
Color difference formulas were found at easyrgb.com.
Further reading:
MIT (see LICENSE)