10 个版本

0.1.9 2023年4月25日
0.1.8 2021年11月13日
0.1.7 2021年10月20日
0.1.6 2021年7月11日
0.1.2 2021年4月11日

#744 in 图像

Download history 13/week @ 2024-07-02 51/week @ 2024-07-16 99/week @ 2024-07-30

每月 150 次下载

MIT/Apache

150KB
3K SLoC

kolor

kolor 是一个用于在颜色空间之间进行转换的crate,并帮助进行一些其他颜色数学运算。

kolor 旨在用于游戏或其他交互式视觉应用,其中它可以帮助实现正确的颜色管理、宽色域渲染和色调映射。

示例

let conversion = kolor::ColorConversion::new(
    kolor::spaces::SRGB,
    kolor::spaces::ACES_CG,
);
let srgb_color = kolor::Vec3::new(0.25, 0.5, 0.75);
let aces_cg_color = conversion.convert(srgb_color);

设计

kolor 旨在支持所有使用3分量向量的颜色空间和颜色模型,例如RGB、LAB、XYZ、HSL、LMS等。

在保持简单的前提下,kolor 使用单个类型 ColorConversion 来表示任何支持的颜色空间之间的颜色转换。

关于设计和实现的更多详细信息,请参阅 模块文档。

支持无 std

kolor 通过禁用默认启用的 std 功能并启用 libm 功能来支持 no_std

贡献

除非您明确声明,否则您提交的任何有意包含在作品中的贡献,根据Apache-2.0许可证定义,将按上述方式双许可,不附加任何额外条款或条件。

请参阅 LICENSE-APACHELICENSE-MIT

许可证

在以下两者中选择许可

由您选择。

请注意,某些依赖项可能受其他条款许可。这些在 deny.toml 中的 licenses.exceptions 下列出,基于最佳努力原则,并在每次CI运行中使用 cargo-deny 进行验证。

依赖项

~0–1MB
~28K SLoC