许多终端模拟器(xterm,Konsole)支持double-size characters。 Ncurses不支持这一点,据我所知,ncurses不会打印转义字符(\ 033将不会转义并以明文形式打印)。
是否可以在ncurses应用程序中打印双倍大小的字符?
答案 0 :(得分:5)
您引用的“双倍大小”字符功能由以下ANSI序列(找到here)设置:
ESC # 3 DEC double-height line, top half (DECDHL) ESC # 4 DEC double-height line, bottom half (DECDHL)
\e#3
属性使终端切换字符集为仅包含每个字符的上半部分的字符集。同样,\e#4
切换到包含下半部分的字符集。通过一起使用,
echo -e "\e#3Foo\n\e#4Foo"
终端可以在两条不同的行上显示“双倍高度”文本。
据我所知,你是对的 - ncurses还没有“实现”它们 - 也许是因为它们依赖于DECTerminals独有的专用字体集。
说实话,似乎不可能,因为ncurses对此功能没有属性,虽然我无法找到直接说明它的任何引用是不可能的。也许有疯狂的术语技能的人可以解释为什么这是(或不是)这种情况。