当前位置: 首页>>技术教程>>正文


在Windows中,我如何使字体看起来像他们一样?

,

问题描述

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

最佳解决方法

喜欢Windows-style字体的Ubuntu用户可能会发现我发布到a Super User question called “Better Ubuntu Fonts”this answer很有用。

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

fonts,ubuntu

次佳解决方法

当你说“让字体看起来很好”时,你的意思是“让字体看起来像like I’m used to” – 如果你来自Mac,你会问“如何防止我的字体被扭曲”。

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

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

默认情况下,Ubuntu位于介于两者之间 – 使用轻微的提示会使字体扭曲一点,使其更适合pixel-grid。

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

第三种解决方法

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

  2. 如果你的字体在某些应用程序中是”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中,我有四个部分:

  1. 是否每个字体都是自动提示或正常提示。要明确使用自动提示,请将提示设置为true并将自动提示设置为true。除了较新的”expensive”字体和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,衬线,等宽,草书和幻想。

编写完.fonts.conf后,打开Wikipedia并在Preferences>中选择默认的比例字体为sans-serif。内容>高级您可以使用默认字体上的箭头键快速查看每种字体的外观,如图所示。

fonts,ubuntu

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

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/1712.html,未经允许,请勿转载。