Chafa 是一个命令行工具,可将各种图像(包括动画 GIF)转换为可以在终端中显示的 Sixel 或 ANSI/Unicode 字符输出。
它是高度可配置的,支持 alpha 透明度和多种颜色模式和颜色空间,结合可选择的Unicode字符范围,以产生所需的输出。
核心功能是由一个 C 语言库提供的,它有一个公开的、记录良好的 API。
特性:
- 支持最流行的图像格式,包括动画 GIF。
- 输出到所有流行的终端图形格式:Sixels、Kitty、iTerm2、Unicode 马赛克。
- 组合来自多个可选范围的 Unicode 符号以获得最佳输出。
- 全角字符支持,例如中文、日文、韩文。
- 字形可以从 Freetype 支持的任何字体文件(TTF、OTF、PCF 等)加载。
- 多种颜色模式,包括真彩色、256 色、16 色和简单的 FG/BG。
- RGB 和 DIN99d 颜色空间,用于改进颜色选择。
- 任何颜色模式下的 Alpha 透明度支持,包括动画。
- 适用于大多数现代和经典终端和终端仿真器。
- 记录在案的稳定 C API。
- 快速和精益:SIMD 优化,多线程。
- 适用于终端图形、ANSI 艺术构图甚至黑白打印。