我有一个等宽字体(PT Mono
),更喜欢在IDE编程中使用。字体只有Regular
其他所有字体,Bold
并且Italic
是通过的倾斜和“加粗”而派生的Regular
。问题是“加粗”字符比常规字符宽,因此IDE窗口中的源代码字符串现在由非等宽字符组成。
如何控制字体的“加粗”,使其不会变得比常规字体宽?
该问题在下面的屏幕快照中显示(PT Mono
,没有专用的粗体)。查看“ unsigned char”和“ sizeof”两个词如何从其适当位置移出。
这是另一个示例,Droid Sans Mono
(没有专用的粗体)。
这里是一个示例,其中的字体具有专用的粗体版本(Liberation Mono
)。粗体和常规对齐完美。
因此,在没有提供粗体的情况下,问题绝对是轻浮的粗体渲染。字体引擎是罪魁祸首。
UPD:有一个文件/etc/fonts/conf.avail/90-synthetic.conf
,如果从中引用该文件,则会/etc/fonts/conf.d/
调整字体引擎以对不具有粗体版本的字体执行合成加粗处理。如果从删除了与此文件的符号链接/etc/fonts/conf.d/
,则粗体消失。这并不是真正想要的,但是至少可以解决等宽字体不是等宽字体的情况(请参见下文PT Mono
)。仍然需要对加粗进行微调(通过配置文件或freetype2
补丁。
您无法控制。字体设计将被破坏。即使您精确地减小了大小(您不能减小大小)以匹配常规字体间距,粗体字体看起来也会变小。如果您要使用等间距的字体,请不要使用粗体...或尝试使用终端
—
zetah 2012年
这不是真的。在单独的文件中同时具有常规和粗体字体的字体,其常规和粗体字符宽度相同。例如,LetterGothic。
—
mbaitoff
我站得住了。当我的字体是Droid Sans Mono时,我使用SciTE注意到了相同的情况(也许您也使用基于Scintilla的编辑器-也许是Geany?),但我认为这是理所当然的,而且我不知道加权字体可以具有不同的间距即使是等宽字体,粗体字体也使用与常规字体相同的间距。更重要的是,似乎比例字体也具有您注意到的这种“功能”,您不是全部。抱歉,我的大胆第
—
一句话
@zetah:我浏览了不同的字体文件,看起来确实只有在没有专用的粗体字体时才会发生宽度变化。我将使用更多屏幕截图更新问题。
—
mbaitoff 2012年