7 个不稳定版本 (3 个重大更改)
0.4.1 | 2024年4月2日 |
---|---|
0.4.0 | 2024年4月2日 |
0.3.0 | 2024年1月21日 |
0.2.0 | 2024年1月14日 |
0.1.2 | 2024年1月14日 |
#416 in 图像
每月24次下载
15KB
172 行
dithord: 巴耶有序抖动crate
此crate提供使用巴耶阈值矩阵进行单色有序抖动的功能。这种方法比其他方法准确性较低,但速度快且视觉上吸引人。
使用此crate进行第2级抖动的示例
目前仅支持单色抖动,但可以考虑支持任意调色板作为功能。
添加到项目
cargo add dithord
用法
此crate提供实现了 OrderedDither
trait 的 image::DynamicImage
,以及用于生成和存储巴耶矩阵的 ThresholdMap
结构。
示例
use dithord::{ThresholdMap, OrderedDither};
use image::{io::Reader};
fn main() {
let mut image = Reader::open("example.png").unwrap().decode().unwrap();
// Generate level 2 (8x8) threshold map
let map = threshold_map::ThresholdMap::level(2);
// Apply dither
image = image.ordered_dither(map);
}
独立使用
此crate提供用于从命令行对图像进行抖动的独立二进制文件。可以使用 cargo 安装
cargo install dithord --features=cli
然后可以使用该二进制文件从命令行对图像进行抖动
dithord input.png output.exr --level 2
依赖项
~5MB
~65K SLoC