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 图像
每月 150 次下载
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-APACHE 和 LICENSE-MIT。
许可证
在以下两者中选择许可
- Apache License,版本 2.0,(LICENSE-APACHE 或 http://www.apache.org/licenses/LICENSE-2.0)
- MIT 许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
由您选择。
请注意,某些依赖项可能受其他条款许可。这些在 deny.toml 中的 licenses.exceptions 下列出,基于最佳努力原则,并在每次CI运行中使用 cargo-deny 进行验证。
依赖项
~0–1MB
~28K SLoC