#color-palette #rgb #hex-color #random #iterator #minimalist #hsv

colourado-iter

一个小巧且极简的库,用于生成无限大小的随机调色板

5 个稳定版本

1.2.0 2023 年 11 月 23 日
1.1.1 2023 年 11 月 23 日
1.0.1 2023 年 11 月 23 日

#592 in Rust 模式

MIT 许可证

20KB
251

Colourado-Iter

这是 Colourado 的分支。

一个小巧且极简的库,用于生成随机调色板。
用户界面 Color 结构体包含从 0 到 1 的 RGB 颜色。
所有颜色都是 f32 类型(无例外)。

此分支实现了 Iterator 特性,允许在每次调用 next 时连续创建新颜色。此外,它允许您提供自己的 rng 来确定初始色调。

此外,Color 结构体已扩展,允许更多表示(例如,将它们转换为 HSV 或返回十六进制颜色表示)。

用法

use colourado::{Color, ColorPalette, PaletteType};

let palette = ColorPalette::new(PaletteType::Random, false, &mut rand::thread_rng());
let random_color = palette.next();
let color_array: [f32; 3] = palette.next().to_array();
let hue = 315.0;
let saturation = 0.5;
let value = 0.3;
let rgb_color: Color = Color::hsv_to_rgb(hue, saturation, value);

可选地,您可以使用 HsvPalette 结构体来获取生成器,该生成器输出立即的 HSV 值,而不是 Color 结构体。

示例

当渲染时,调色板可能看起来像这样

Example image

通过运行以下命令自行测试颜色调色板
cargorun --examplepreview TYPE NUM adjacent|spread
TYPE 可以是 randompasteldarkNUM 是要生成和显示的颜色数量,adjacentspread 确定颜色是否生成得彼此靠近或分散。

依赖项

~305KB