将 xterm256 转换为 ansi

将 xterm256 转换为 ansi

我有一个程序只接受 ANSI 颜色输入,但我有理由向它提供输出 xterm256 颜色代码的程序的输出。有转换器吗?我当然意识到颜色分辨率一定会丢失,但必须最接近的颜色匹配。

答案1

从来没有听说过这样的工具。但你可以轻松地进行双重转换ansi2gif- gif2ansi。或任何其他图形格式,例如pngtiff

答案2

因为似乎不存在这样的工具。我做了一个:xterm2ansi

它的工作原理是将所有 256 种 xterm 颜色映射到十六进制代码,然后将 16 种 ANSI 颜色映射到 xterm 上显示的 RGB 值。然后,它通过计算颜色的 RGB 分量的最小距离来找到最接近 xterm 颜色的 ANSI 颜色。

例子:

echo -e "\033[38;5;80mcyan\033[m" | xterm2ansi | cat -v
# ^[[36mcyan^[[m

相关内容