为什么这个 ANSI Art 无法在 Linux 终端上正确渲染

为什么这个 ANSI Art 无法在 Linux 终端上正确渲染

我正在尝试调查为什么我的图书馆无法正确渲染此 ANSI 艺术作品:

ANSI 食肉花艺术

我虽然问题出在我的 ANSI 转义处理中,但似乎在真实终端中是相同的(在 XFce 终端中测试)。

带有 ANSI 艺术的终端

我不知道如何调试这个,该文件采用 CP437 编码,可以在以下位置找到16color.rs 网站。我已将其转换为 UTF8(也删除了显示每行字符数的元标记),并且可以在此处找到该文件:https://jcubic.pl/text.ans终端需要有 80 列,否则无法正常显示。

我很乐意回答它为什么坏了,但知道如何修复它并正确显示也很好。

答案1

渲染问题是由空字节引起的,这些字节被 ANSI 编辑器显示为空格(大概是在 DOS 下,尽管我没有检查过)。

要解决此问题:

tr '\0' ' ' < 67_Calendar_2020_06_June.ans | iconv -f CP437 -t UTF8

相关内容