繁体   English   中英

C - 如何在 Ncurses 中更改字体大小?

[英]C - How to change font size in Ncurses?

有吗? 我似乎无法找到任何执行此操作的功能。 我尝试谷歌搜索,但找不到任何东西。

我不相信这是可能的。 终端不适合这样的事情。 它用于以有时不同的颜色显示文本。 如果你想改变字体大小,你需要打开一个窗口并绘制到它(这实际上可能不是正确的术语。图形不是我的强项)。 如果这是您想要做的,我建议您查看 sdl。 它的设置相当简单并且易于使用 (IMO)。 而且因为我知道 stackoverflow 不喜欢火焰战,所以我绝不说它是最好的。 我相信有很多同样好的替代品。 我只是没有使用它们

如果文本显示在 xterm 中,则可以更改它。 编辑 .Xresources 并添加(可能在顶部):

xterm*font: *-fixed-*-*-*-20-*
xterm*geometry: 80x24+5+5

这指定了 20 的字体大小,80x24 字符 xterminal 窗口位于显示器的左上角(宽x高+xoffset+yoffset)

我无法使用大于 20 的字体。我在带有 XFCE GUI 的 Ubuntu 14.04 上使用下面的命令行从终端窗口启动应用程序。

xterm -e my_c_app

好吧,如果您在 Windows 命令窗口上运行,则可以完成。 我就是这么做的。

Ncurses 将使用您的控制台窗口设置: colors, size and typeface. 这有效,但它是一种基本的使用模式。 如果需要,您甚至可以在初始化 ncurses 终端之前通过程序更改字符属性。

我尝试使用等宽字体没有任何问题,甚至尝试使用比例字体。 它也可以工作,但由于某些字符的“纠缠”,这里的视觉质量较差,因为 ncurses 在等宽模式下保持间距。

我没有尝试(还)在“飞行中”改变角色模式,但相信这是可能的。 但我认为您一次只能使用一种模式/大小,即:您不能在同一屏幕上混合使用字体/大小。

ncurses 没有办法,但某些终端支持更改字体。 对于 xterm,例如:

$ echo -e '\x1b]50;-misc-fixed-medium-r-normal--20-200-75-75-c-100-iso10646-1\a'

XTerm 控制序列

使用 C++ 更改终端字体大小

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM