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日

#224 in 图像

每月下载量 39
用于 2 crate

MIT/Apache

145KB
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