1 个不稳定版本

0.1.0 2022年8月16日

#969编程语言

MIT 许可证

61KB
1.5K SLoC

pint 🍺

一个带有内置 png 解码器的 (P)iet (Int)erpreter。

Piet 是一种程序看起来像抽象绘画的编程语言。这种语言是以几何抽象艺术的先驱皮特·蒙德里安的名字命名的。

这是一个打印 "Hello World!" 的 piet 程序。

安装

cargo install pint

或者你可以克隆这个仓库,从源代码构建它

使用方法

pint some_test.png

codel-size 会自动推断。你也可以手动传递它

pint some_test.png -c <codel_size>

由于 png 解码器是从头开始构建的,它只实现了最常见的 Png 颜色类型 TruecolorRGB 和 Indexed。目前没有对 gifs 的支持。

测试

输入 make 会显示这个 crate 的选项。

单元测试

$ make unit_test
or
$ cargo t

还有集成测试,用于检查位于 tests/fixtures 的测试图像的结果

$ make integration_tests
or
$ bash tests/integration_tests

贡献

我非常欢迎任何形式的贡献(只要测试通过 :)) 或者反馈,因为这是我第一次写 Rust。也许有人愿意完成 png 解码器以支持各种 png

依赖关系

~3MB
~62K SLoC