确定xterm的等宽TrueType字体的字符单元格大小

时间:2013-07-23 12:40:55

标签: x11 true-type-fonts xterm

给定任意等宽的TrueType字体和任意大小,如

xterm -fa "Bitstream Vera Sans Mono:size=14"

我想添加一个几何规范,以便xterm填充显示器的整个宽度和高度的一部分。当我知道xterm字符单元格大小时,我可以计算行数和列数。有没有办法根据上面的-fa选项中的字体名称和大小来计算此单元格大小?

我正在考虑将xterm源分开,以找到执行适当计算的位置。但是我的X11编程技巧充其量只是不合格。

1 个答案:

答案 0 :(得分:2)

无需进行X编程;)

bash$ xterm -fa "Bitstream Vera Sans Mono:size=14" -geometry 40x10 \
    -e 'xwininfo -id $WINDOWID | egrep "(Width|Height)" > /tmp/winfo1'
bash$ xterm -fa "Bitstream Vera Sans Mono:size=14" -geometry 80x20 \
    -e 'xwininfo -id $WINDOWID | egrep "(Width|Height)" > /tmp/winfo2'

现在您有两个尺寸以像素为单位的文件,包括任何填充。在我的情况下,他们是444×224和884×444。从这一点可以计算出11×22像素的单元尺寸,以及用于填充的4个像素。

请注意,这不包括任何WM装饰。我认为找到这些的任何方法都是特定于WM的。在我的情况下,我需要查看祖父窗口大小(做xwininfo -id $something -tree | fgrep Parent两次)。