2011-08-19 128 views
2

我试图让我的终端仿真器大胆的所有文字设置:粗体字体Xft的Xresources中

URxvt*font: xft:FONT_NAME:pixelsize=14:style=bold 

在由xrdb读取文件。问题是这只适用于某些字体(例如:DejaVu Sans Mono,Consolas)。很多字体只会显示正常的重量(例如摩纳哥,芒什,安达莱单色)。

奇怪的是,假设为粗体的文本(如在manpages中,ls输出)仍显示为粗体。但如果我把文本的

URxvt*font:  xft:Monaco:pixelsize=14 
URxvt*boldFont: xft:Monaco:pixelsize=14:style=bold 

然后没有将是大胆的。这就好像该字体没有称为“粗体”的样式,即使任何字体选择对话框都是这样说的。事实上,某些文字显示为粗体boldFont未指定,告诉我rxvt-unicode能够显示这些字体的粗体版本。

我试过在konsolexfce4-terminal中使用这些字体。 Konsole甚至不提供Monaco作为可能的字体(它不认为它是一个等宽字体,但这是一个已知的错误),而且Mensch只能以Regular和Oblique样式提供。在xfce4终端中,Mensch和摩纳哥都有Bold版本。

注意:我还没有创建新标签的声望。被拒绝的标签有:xrdb xresources xft urxvt

回答

3

Andale Mono没有粗体,所以指定“style = bold”没有效果。摩纳哥也是如此,但我不确定。

对你的第二部分问题。如果您指定的字体没有粗体版本,则终端将自行创建。我不知道确切的算法,但看起来它只是用一个像素位移两次打印相同的字形。但是,如果您也指定粗体字体,终端将不会尝试制作粗体字体,并且所有文本看起来都是相同的。

+0

当我在xfce4-terminal的字体选择对话框中选择“Andale Mono”时,Bold是一个选项。但是,没有单独的“粗体”ttf文件。 – Daniel