问题描述
Ubuntu中的字体看起来很糟糕和模糊。当我比较Ubuntu和Windows中的网站时,即使我导入了所有的Windows字体,Windows字体看起来也更加可读。我怎么能改变这个?
最佳解决方法
喜欢Windows-style字体的Ubuntu用户可能会发现我发布到a Super User question called “Better Ubuntu Fonts”的this answer很有用。
以下是您遵循我的建议可以期待的一个例子:
次佳解决方法
当你说“让字体看起来很好”时,你的意思是“让字体看起来像like I’m used to” – 如果你来自Mac,你会问“如何防止我的字体被扭曲”。
Windows中的字体渲染与像素网格重叠,为扭曲字体交换锐利边。这对应于外观→字体→详细信息中的“full hinting”选项。您不必触及任何进一步的配置。
OS X上的字体渲染是另一种方式 – 它不会扭曲字体形状,这意味着大多数字形跨越像素边界。这对应于“none”提示选项。
默认情况下,Ubuntu位于介于两者之间 – 使用轻微的提示会使字体扭曲一点,使其更适合pixel-grid。
如果您使用的是LCD显示器,则应启用子像素抗锯齿,无论提示类型如何。
第三种解决方法
-
启用字体提示。右键单击桌面,单击更改背景,单击字体选项卡并打开子像素平滑。您可能会发现通过详细信息按钮可以获得更好的效果。
-
如果你的字体在某些应用程序中是”broken”,因为我的一段时间在Firefox中,请试试这个:
sudo fc-cache -fv
它应该刷新你的系统font-cache。看起来很傻,但它对我有用。
第四种方法
2010年5月,与TrueType提示有关的专利已经过期,在此之前,FreeType使用了自动提示,这使得non-hinted字体看起来更好,但是专业和完全暗示的字体看起来很糟糕。
由于与字体提示相关的专利已过期FreeType默认启用字体提示,您可以升级为特立独行或使用最新版本的FreeType以获得最佳效果。
第五种方法
我认为真正帮助我的字体平滑度来自调整dpi。
首先,打开一个终端并键入:
xdpyinfo | grep resolution
它会给你一个像”96×96″的数字。
现在转到外观设置中的字体选项卡。单击右下角的详细信息按钮。在这个新窗口的顶部,它有一个放置数字的地方。把终端命令给你的第一个数字。例如,它给了我”108×106″所以我把108放在那里。
这样做可以让您更接近您正在寻找的那些流畅的字体。
第六种方法
我已经使用Ubuntu 4年了,但我还是更喜欢”windows like”字体渲染。你不是一个人…
1-安装msttcorefonts:
sudo apt-get install msttcorefonts
2-添加tahoma truetype字体到/usr /share /fonts /truetype /从一些旧的Windows磁盘(这是一种耻辱,我知道;-)
sudo cp --no-preserve=all somewhere/Tahoma*.ttf /usr/share/fonts/truetype
3-在/etc/fonts/conf.avail中保存以下fonts.conf,其名称如39-clearfonts.conf(具有root所有权)
sudo cp --no-preserve=all ~/Download/fonts.conf /etc/fonts/conf.avail/39-clearfonts.conf
4-在/etc/fonts/fonts.d中创建一个符号链接
sudo ln -s /etc/fonts/conf.avail/39-clearfonts.conf /etc/fonts/conf.d
5-在外观设置中,在字体选项卡中,选择大小为10的”Sans”,常规或粗体,作为除serif字体(最后一个)之外的任何字体并验证。
你应该得到像你在等待的东西! (抱歉,作为新用户,我不允许发布截图)
这是神奇的fonts.conf文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!-- Default fonts for generic families -->
<alias>
<family>fantasy</family>
<prefer>
<family>Comic Sans MS</family>
<family>URW</family>
</prefer>
</alias>
<alias>
<family>monospace</family>
<prefer>
<family>Courier New</family>
<family>DejaVu Sans Mono</family>
</prefer>
</alias>
<alias>
<family>sans-serif</family>
<prefer>
<family>Tahoma</family>
<family>Arial</family>
<family>DejaVu Sans Condensed</family>
</prefer>
</alias>
<alias>
<family>serif</family>
<prefer>
<family>Times New Roman</family>
<family>DejaVu Serif Condensed</family>
</prefer>
</alias>
<!-- Alias for common fonts in case they're not found -->
<alias>
<family>Arial</family>
<accept><family>sans-serif</family></accept>
</alias>
<alias>
<family>Bitstream Vera Sans Mono</family>
<prefer>
<family>Courier New</family>
<family>DejaVu Sans Mono</family>
</prefer>
</alias>
<alias>
<family>Comic Sans MS</family>
<accept><family>URW</family></accept>
</alias>
<alias>
<family>Courier</family>
<prefer><family>monospace</family></prefer>
</alias>
<alias>
<family>Courier New</family>
<accept><family>monospace</family></accept>
</alias>
<alias>
<family>cursive</family>
<accept><family>URW</family></accept>
</alias>
<alias>
<family>Georgia</family>
<accept><family>serif</family></accept>
</alias>
<alias>
<family>Garamond</family>
<accept><family>serif</family></accept>
</alias>
<alias>
<family>Helvetica</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>Impact</family>
<accept><family>sans-serif</family></accept>
</alias>
<alias>
<family>Palatino Linotype</family>
<accept><family>serif</family></accept>
</alias>
<alias>
<family>Trebuchet MS</family>
<accept><family>sans-serif</family></accept>
</alias>
<alias>
<family>Tahoma</family>
<accept><family>sans-serif</family></accept>
</alias>
<alias>
<family>Times</family>
<prefer><family>Times New Roman</family></prefer>
<default><family>serif</family></default>
</alias>
<alias>
<family>Times New Roman</family>
<prefer><family>Times New Roman</family></prefer>
</alias>
<alias>
<family>Verdana</family>
<accept><family>sans-serif</family></accept>
</alias>
<!-- Bitstream Vera Sans is default for sans-serif. Replace it with something nicer -->
<alias>
<family>Bitstream Vera Sans</family>
<prefer>
<family>Tahoma</family>
<family>Arial</family>
<family>DejaVu Sans Condensed</family>
</prefer>
</alias>
<!-- Bitstream Vera Serif is default for serif. Replace it with something nicer -->
<alias>
<family>Bitstream Vera Serif</family>
<prefer>
<family>Times New Roman</family>
<family>DejaVu Serif Condensed</family>
</prefer>
</alias>
<!-- Replace Helvetica with Arial, to be tested with fc-match helvetica -->
<match target="pattern">
<test qual="any" name="family">
<string>Helvetica</string>
</test>
<edit name="family" mode="assign" binding="strong">
<string>Arial</string>
</edit>
</match>
<match target="font">
<edit mode="assign" name="rgba"><const>rgb</const></edit>
</match>
<match target="font">
<edit mode="assign" name="hinting"><bool>true</bool></edit>
</match>
<match target="font">
<edit mode="assign" name="hintstyle"><const>hintmedium</const></edit>
</match>
<match target="font">
<edit mode="assign" name="antialias"><bool>true</bool></edit>
</match>
<match target="font">
<test compare="more_eq" name="size" qual="any" target="default"><double>-1</double></test>
<test compare="less_eq" name="size" qual="any" target="default"><double>15</double></test>
<test name="family">
<string>Arial</string>
<string>Comic Sans</string>
<string>Courier New</string>
<string>Georgia</string>
<string>Impact</string>
<string>Helvetica</string>
<string>Lucida Bright</string>
<string>Lucida Console</string>
<string>Lucida Sans</string>
<string>Microsoft Sans</string>
<string>Palatino Linotype</string>
<string>Tahoma</string>
<string>Ubuntu</string>
<string>Times New Roman</string>
<string>Trebuchet MS</string>
<string>Verdana</string>
</test>
<edit mode="assign" name="antialias"><bool>false</bool></edit>
</match>
<match target="font">
<test compare="less_eq" name="pixelsize" qual="any" target="default"><double>20</double></test>
<test name="family">
<string>Arial</string>
<string>Comic Sans</string>
<string>Courier New</string>
<string>Georgia</string>
<string>Impact</string>
<string>Helvetica</string>
<string>Lucida Bright</string>
<string>Lucida Console</string>
<string>Lucida Sans</string>
<string>Microsoft Sans</string>
<string>Palatino Linotype</string>
<string>Tahoma</string>
<string>Ubuntu</string>
<string>Times New Roman</string>
<string>Trebuchet MS</string>
<string>Verdana</string>
</test>
<edit mode="assign" name="antialias"><bool>false</bool></edit>
</match>
</fontconfig>
第七种方法
您可以在两个主要位置设置字体的渲染,乍一看它们似乎没有任何关系:
gnome-appearance-properties
显示适用于所有GTK应用程序的设置,并允许您选择各种级别的平滑度和提示。此处的设置同样适用于所有字体。其他字体设置(如决定是提示还是自动提示)取自以下内容:
fonconfig
是负责整个系统的字体配置和字体匹配的程序。您可以通过编辑/etc/fonts/local.conf
(~/.fonts.conf
per-user)或在/etc/fonts/conf.d
中将符号链接设置为/etc/fonts/conf.avail
中的各种预设来做出选择。可以通过运行man fonts.conf
来读取技术细节。 Firefox和Chromium直接从这里读取设置,如果没有找到提示设置,只需咨询gnome-appearance-properties。
在我的.fonts.conf
中,我有四个部分:
-
是否每个字体都是自动提示或正常提示。要明确使用自动提示,请将提示设置为true并将自动提示设置为true。除了较新的”expensive”字体和MS字体之外,我对大多数字体都有轻微的自动提示,这些字体通常在中等情况下提示。例外情况是DejaVu Sans Condensed,Lucida Grande,PT Sans,Segoe和Tahoma略有暗示。我认为Windows风格是完全/中等的正常暗示(通常是相同的)。 freetype文档说如果没有提供字体的truetype提示信息,那么将应用自动提示,这似乎也适用于Firefox。请注意
.fonts.conf
不会与预设发生冲突。 -
如果在系统上找不到字体,则适用的替换和回退。我交换了DejaVu Sans Condensed for Tahoma,DejaVu Sans for Geneva,Arimo for Arial,Mukti Narrow for Lucida Grande和FreeSans for Helvetica。
-
例外。例如,关闭粗体字的自动关闭。
-
标准名称的别名; sans-serif,衬线,等宽,草书和幻想。
编写完.fonts.conf
后,打开Wikipedia并在Preferences>中选择默认的比例字体为sans-serif。内容>高级您可以使用默认字体上的箭头键快速查看每种字体的外观,如图所示。
或者,Igor的博客有一个test page,您可以在其中比较特定字体的所有不同渲染选项。