5 个不稳定版本
0.3.1 | 2023年4月26日 |
---|---|
0.3.0 | 2023年4月13日 |
0.2.1 | 2023年4月2日 |
0.2.0 | 2023年3月7日 |
0.1.0 | 2022年11月17日 |
#666 in 图像
每月 27 次下载
18KB
426 行
Dithor
这个库是什么
基本原理
该库使用类似 抖动 的方式,仅使用两种颜色重新编写输入图像。
图像被分割成许多 5x5 像素的方块。对于这些方块中的每一个,计算其平均 相对亮度。
然后使用这个亮度为方块分配一个级别。级别在 0 到 9 之间,0 表示完全明亮,9 表示完全黑暗。
然后根据级别填充方块的以下模式
以下是一张显示更大表面上相同模式的图片
以下是使用希尔玛·阿芙·克林特的画作“天鹅,第1号”的示例
使用颜色
当第三个参数为 true 时,输出将为彩色,使用 25 像素中最亮和最暗的颜色填充上述模式。
如何使用它
要使用此库,您可以简单地调用它
dithor::dithor("input.jpg", "output.jpg", true, true);
参数
- input: 输入图像的路径,可以是 jpg 或 png
- output: 输出图像的路径,可以是 jpg 或 png。如果文件已存在,则将覆盖它
- overwrite: 指定输出文件是否应覆盖具有相同名称的任何现有图像
- color: 布尔值,如果为 true,输出图像将是彩色,否则是黑白
依赖项
~13MB
~60K SLoC