it-swarm.cn

如何使字体看起来像在Windows中?

Ubuntu中的字体看起来很糟糕和模糊。当我比较Ubuntu和Windows中的网站时,即使我导入了所有的Windows字体,Windows字体看起来也更加可读。我怎么能改变这个?

52
Cody Harlow

喜欢Windows风格字体的Ubuntu用户可能会发现 这个答案 我发布的 一个超级用户问题叫做“更好的Ubuntu字体” 有用。

以下是您遵循我的建议可以期待的一个例子:

32
Jonik

当你说“使字体看起来 “,你的意思是”让字体看起来像 就像我习惯的那样 “ - 如果你来自Mac,你会问”如何防止我的字体被扭曲“。

Windows中的字体渲染与像素网格重叠,为扭曲字体交换锐利边缘。这对应于外观→字体→详细信息中的“完全提示”选项。您不必触及任何进一步的配置。

OS X上的字体渲染是另一种方式 - 它不会扭曲字体形状,这意味着大多数字形跨越像素边界。这对应于“无”提示选项。

默认情况下,Ubuntu位于介于两者之间 - 使用轻微的提示会使字体扭曲一点,使其更好地适应像素网格。

如果您使用LCD显示,则应启用子像素抗锯齿,无论提示类型如何。

56
RAOF
  1. 启用字体提示。

    右键单击桌面,单击更改背景,单击字体选项卡并打开子像素平滑。您可能会发现通过详细信息按钮可以获得更好的结果。

  2. 如果你的字体在某些应用程序中被“破坏”,因为我的一段时间在Firefox中,请试试这个:

    Sudo fc-cache -fv
    

    它应该只刷新你的系统字体缓存。看起来很傻但它对我有用。

14
Oli

2010年5月,与TrueType提示有关的专利已经过期,之前FreeType使用了自动提示,这使得非提示字体看起来更好,但是专业和完全暗示的字体看起来很糟糕。

由于与字体提示相关的专利已过期FreeType默认启用字体提示,您可以升级为特立独行或使用最新版本的FreeType以获得最佳效果。

6
akshatj

我认为真正帮助我的字体平滑度来自调整dpi。

首先,打开一个终端并键入:

xdpyinfo | grep resolution

它会给你一个像“96x96”的数字。

现在转到外观设置中的字体选项卡。单击右下角的详细信息按钮。在这个新窗口的顶部,它有一个放置数字的地方。把终端命令给你的第一个数字。例如,它给了我“108x106”所以我把108放在那里。

这样做可以让您更接近您正在寻找的那些流畅的字体。

4
RPG Master

您可以在两个主要位置设置字体的渲染,乍一看它们似乎没有任何关系:

gnome-appearance-properties显示适用于所有GTK应用程序的设置,并允许您选择各种级别的平滑度和提示。此处的设置同样适用于所有字体。其他字体设置(如决定是提示还是自动提示)取自以下内容:

fonconfig是负责整个系统的字体配置和字体匹配的程序。您可以通过编辑/etc/fonts/local.conf(每个用户~/.fonts.conf)或在/etc/fonts/conf.d中将符号链接设置为/etc/fonts/conf.avail中的各种预设来做出选择。可以通过运行man fonts.conf来读取技术细节。 Firefox和Chromium直接从这里读取设置,如果没有找到提示设置,则仅咨询gnome-appearance-properties。

在我的.fonts.conf中,我有四个部分:

  1. 是否每个字体都是自动提示或正常提示。要明确使用自动提示,请将hinting设置为true并将autohinting设置为true。除了较新的“昂贵”字体和MS字体之外,我对大多数字体都进行了轻微自动操作,这些字体通常在中等情况下提示。例外的是DejaVu Sans Condensed,Lucida Grande,PT Sans,Segoe和Tahoma略有暗示。我认为Windows风格是完全/中等的正常暗示(通常是相同的)。 freetype文档说如果没有提供字体的truetype提示信息,那么将应用自动提示,这似乎也适用于Firefox。注意.fonts.conf不与预设冲突。

  2. 如果在系统上找不到字体,则适用的替换和回退。我交换了DejaVu Sans Condensed for Tahoma,DejaVu Sans for Geneva,Arimo for Arial,Mukti Narrow for Lucida Grande和FreeSans for Helvetica。

  3. 例外。例如,关闭粗体字体的自动提示。

  4. 标准名称的别名; sans-serif,serif,monospace,草书和幻想。

一旦你编写了.fonts.conf,打开维基百科并在首选项>内容>高级中选择你的默认比例字体为sans-serif,你可以很快看到每个字体使用默认字体上的箭头键查看,如图所示。

Firefox Font Preferences

或者,Igor的博客有一个 测试页面 ,您可以在其中比较特定字体的所有不同渲染选项。

2
daithib8

汤姆在Tombuntu有一些增强字体渲染的技巧 (这是从2008年开始,所以指令可能不再精确):

您的第一站是GNOME的字体配置设置,位于Fonts选项卡下的System->Preferences->Appearance中。如果您使用LCD显示,请确保启用了子像素平滑渲染模式。单击“详细信息”以访问提示选项。玩这些来获得你喜欢的结果。

以下是使用以下设置配置的系统字体示例:

image1

使用.fonts.conf文件还有更多字体呈现选项。这个文件 来自这个论坛帖子 ,打开一个提示功能,该功能通常因Apple的专利问题而被禁用。

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
  <match target="font">
    <edit name="autohint" mode="assign">
      <bool>true</bool>
    </edit>
  </match>
</fontconfig>

将上面的文本复制并粘贴到文本文件中,并将其作为.fonts.conf保存在主目录中(注意第一个句点,此文件将被隐藏)。注销以使更改生效。以下是此文件的字体示例:

image2

A 更复杂的.fonts.conf文件source ),生成非常流畅和粗体的字体,类似于OS X中的字体。这是一个示例:

image3

1
Jared Harley

Unity没有像KDE这样的字体设置。对于那些想要实现 @ Jonik's 解决方案但使用Unity的人。

fonts.conf。

    <?xml version="1.0" ?>
    <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
    <fontconfig>
        <match target="font">
            <edit name="antialias" mode="assign">
                <bool>false</bool>
            </edit>
            <edit name="rgba" mode="assign">
                <const>rgb</const>
            </edit>
            <edit name="hinting" mode="assign">
                <bool>true</bool>
            </edit>
            <edit name="autohint" mode="assign">
                <bool>true</bool>
            </edit>
            <edit name="hintstyle" mode="assign">
                <const>hintmedium</const>
            </edit>
            <edit mode="assign" name="lcdfilter">
                <const>lcddefault</const>
            </edit>
        </match>

        <match target="font" >
            <test name="size" qual="any" compare="more">
                <double>11</double>
            </test>
            <edit name="antialias" mode="assign">
                <bool>true</bool>
            </edit>
        </match>

        <match target="font" >
            <test name="pixelsize" qual="any" compare="more">
                <double>15</double>
            </test>
            <edit name="antialias" mode="assign">
                <bool>true</bool>
            </edit>
        </match>

        <match target="font" >
            <test name="size" qual="any" compare="less">
                <double>9</double>
            </test>
            <edit name="antialias" mode="assign">
                <bool>true</bool>
            </edit>
        </match>

        <match target="font" >
            <test name="pixelsize" qual="any" compare="less">
                <double>12</double>
            </test>
            <edit name="antialias" mode="assign">
                <bool>true</bool>
            </edit>
        </match>
    </fontconfig>
0
Alex Vauch