关于 Chafa
Chafa 将图像和动画转换为文本和颜色字符,以便在现代终端中显示。它支持多种输出格式,包括 ANSI、Unicode 和 HTML,适合在命令行环境中预览媒体。
主要功能
- 01将图像转换为 ANSI/Unicode 字符艺术
- 02在终端中逐帧显示动画
- 03通过命令标志控制输出大小和色深
- 04批量处理多个图像
适用场景
- 01在终端会话中预览图像,无需外部查看器
- 02生成图像的 ASCII 艺术表示
- 03在 CI 日志或无头环境中显示动画
- 04为基于终端的工作流创建视觉输出
安装
选择你的系统或包管理器,复制命令到终端运行。
安装完成后运行chafa --version确认安装成功。
命令示例
常用命令按使用顺序排列。
详细介绍
关于
Chafa 是一款命令行工具,可将图像数据(包括动画 GIF)转换为图形格式,或转换为适合在终端中显示的 ANSI/Unicode 字符画。它支持广泛的功能,可用于从历史上的电传打字机到现代终端模拟器等各种设备。
核心功能由一个 C 库提供,该库拥有公开且文档完善的 API。
库和前端工具均采用较宽松 GPL 许可证第 3 版或更高版本(LGPLv3+)。
官方网站和 C API 文档可在线查阅。欢迎查看图库中的截图。
安装
Chafa 很可能已打包在你的发行版中,因此如果你不打算参与开发,最好使用官方软件包。如果你想自行构建最新版本,请继续阅读。
要从 Chafa 的 git 仓库编译,需要安装 GCC、make、Autoconf、Automake、Libtool 和 GLib 开发包。如果你想构建命令行工具 chafa,而不只是构建库,还需要安装以下开发包:
- FreeType2。通常以
libfreetype6-dev或freetype2-devel的名称打包。 - libavif(可选)。查找
libavif-dev或libavif-devel。 - libdeflate(可选,可加快 PNG 解码速度)。查找
libdeflate-dev或libdeflate-devel。 - libheif 1.12 或更高版本(可选)。查找
libheif-dev或libheif-devel。 - libjpeg(可选)。查找
libjpeg-dev、libjpeg62-devel或libjpeg8-devel。 - libjxl(可选)。查找
libjxl-dev或libjxl-devel。 - librsvg(可选)。查找
librsvg2-dev或librsvg-devel。 - libtiff(可选)。查找
libtiff5-dev或libtiff-devel。 - libwebp(可选)。查找
libwebp-dev或libwebp-devel。
如果你想构建文档,还需要 gtk-doc。
首先克隆仓库:
$ git clone https://github.com/hpjansson/chafa.git
然后切换到顶层目录,并运行以下 shell 命令:
$ ./autogen.sh
$ make
$ sudo make install
完成!
Python 绑定
Erica Ferrua Edwardsdóttir 维护着 Chafa 的优秀 Python 绑定。如果你喜欢 Python,不妨看看。它们易于使用,并附带一份详细教程。
JavaScript 绑定
Héctor Molinero Fernández 维护着出色的 JavaScript 绑定,该绑定基于他移植的 WebAssembly 版本构建。这些绑定可从 NPM 获取,可用于 Node.js、Web 浏览器等环境。
