31 个版本
0.3.8 | 2024 年 3 月 31 日 |
---|---|
0.3.7 | 2023 年 9 月 20 日 |
0.3.5 | 2023 年 8 月 30 日 |
0.3.2 | 2023 年 6 月 27 日 |
0.2.0 | 2022 年 12 月 30 日 |
#54 in 图像
每月 104 次下载
在 7 crate 中使用
175KB
4K SLoC
Color Art
用于处理颜色和颜色空间的 Rust crate。
文档
查看 Color Art。
用法
添加依赖
[dependencies]
color-art = "0.3"
颜色生成器
从字符串创建颜色
您可以使用 from_str
方法从一个字符串构造一个颜色。
当前支持的颜色格式
rgb
/rgba
十六进制
hsl
/hsla
hsv
hsi
hwb
cmyk
xyz
yiq
yuv
YCbCr
lab
命名颜色
例如
use color_art::Color;
use std::str::FromStr;
let color = Color::from_str("rgb(255, 255, 0)").unwrap();
let color = Color::from_str("rgba(255, 255, 0, 0.5)").unwrap();
let color = Color::from_str("#ffff00").unwrap();
let color = Color::from_str("hsl(60, 100%, 50%)").unwrap();
let color = Color::from_str("hsla(60, 100%, 50%, 0.6)").unwrap();
let color = Color::from_str("hsv(60, 100%, 100%)").unwrap();
let color = Color::from_str("hsi(60, 100%, 66.67%)").unwrap();
let color = Color::from_str("hwb(60, 0%, 0%)").unwrap();
let color = Color::from_str("cmyk(0%, 0%, 100%, 0%)").unwrap();
let color = Color::from_str("xyz(0.769975, 0.927808, 0.138526)").unwrap();
let color = Color::from_str("yiq(0.886, 0.32126, -0.31114)").unwrap();
let color = Color::from_str("yuv(0.886, -0.4359, 0.1)").unwrap();
let color = Color::from_str("YCbCr(225.93, 0.5755, 148.7269)").unwrap();
let color = Color::from_str("lab(97.14, -21.55, 94.48)").unwrap();
let color = Color::from_str("yellow").unwrap();
从数字创建颜色
您可以使用 from_num
方法从一个数字构造一个颜色。
例如
use color_art::Color;
let color = Color::from_num(16776960).unwrap();
let color = Color::from_num(0xffff00).unwrap();
从名称创建颜色
您可以使用 from_name
方法从一个名称构造一个颜色。
例如
use color_art::Color;
let color = Color::from_name("yellow").unwrap();
从颜色空间创建颜色
您可以使用 from_<color_space>
方法从一个颜色空间构造一个颜色。
当前支持的颜色空间
rgb
rgba
hsl
hsv
cmyk
十六进制
未来还将支持更多颜色空间。
例如
use color_art::Color;
let color = Color::from_rgb(255, 255, 0).unwrap();
let color = Color::from_rgba(255, 255, 0, 0.5).unwrap();
let color = Color::from_hsl(60.0, 1.0, 0.5).unwrap();
let color = Color::from_hsv(60.0, 1.0, 1.0).unwrap();
let color = Color::from_cmyk(0.0, 0.0, 1.0, 0.0).unwrap();
let color = Color::from_hex("#ffff00").unwrap();
更多示例请参阅 从颜色空间构造。
其他颜色生成方法
颜色转换
将颜色转换为字符串
将颜色转换为字符串。
请参阅 从字符串构造。
颜色通道
提取颜色通道。
参考颜色通道。
颜色操作
颜色操作函数。
参考颜色操作。
由JiatLn用❤️制作。
许可证
依赖项
~0.6–1.3MB
~27K SLoC