8个版本 (5个稳定版)
使用旧Rust 2015
1.2.0 | 2023年7月11日 |
---|---|
1.1.0 | 2020年4月5日 |
1.0.2 | 2018年10月24日 |
0.2.2 | 2018年4月4日 |
0.1.1 | 2018年2月27日 |
#218 in 图像
2,152 每月下载量
用于 5 crate
425KB
6.5K SLoC
Scarlet
为Rust开发者简化颜色和颜色空间
人类和计算机对颜色的感知方式不同,因此像RGB这样的颜色描述无法有效地描述人类感知的颜色,反之亦然。图像处理和其他学科需要能够在尊重颜色显示和人类视觉感知的方式之间进行颜色相互转换和工作。Scarlet不仅使这成为可能,而且简单方便。使用Scarlet,您可以
- 在不同颜色表示之间进行相互转换
- 使用不同表示的概念在一种表示中 使用 颜色:例如,您可以使用准确模拟人类视觉的色彩亮度模型,而无需离开RGB,或在CIELAB中修改颜色的色调
- 准确混合和平均颜色,无需修复或看起来不正确的结果
- 创建感知均匀的颜色尺度、色图和渐变,适合高质量视觉作品,不会误导观众
- 准确地将颜色转换为灰度
- 准确确定颜色在感知上的距离。
- 还有更多!
安装
将此添加到您的 Cargo.toml
[dependencies]
scarlet = "1.1.0"
并将其添加到您的crate根目录
extern crate scarlet;
文档
请参阅docs.rs上的文档。
贡献指南
在提交pull request之前,请参阅贡献指南。
其核心要点是
- 运行
cargo test
应该导致所有测试通过。如果测试本身是错误的,请在pull request中更改这些错误并解释错误。除非您有非常好的理由,否则不要禁用测试以使cargo test
通过! - 如果您对面向公众的API进行修改,请确保这些修改符合最佳实践,并解释您为什么认为API应该进行更改。
- 如果您对已经工作的代码进行性能改进,请使用测试代码进行基准测试,测试用户可能希望执行的操作,并发布显示您的改进实际上改善了某项功能的成果。
- 如果您添加了新功能,您应该有彻底测试该功能的测试用例。
总体理念
要了解Scarlet的总体理念和API设计,请参阅api.org
。这更适合开发者。
依赖关系
~13MB
~223K SLoC