Неправильне згладжування шрифту в Ubuntu


36

Я перемикаюсь з Fedora 8 на Ubuntu 9.04, і, здається, я не можу зробити так, щоб гарний шрифт не згладжувався. Схоже, що fontconfig Ubuntu намагається зберегти символи в цілісній ширині пікселів. Це робить текст більш важким для читання, коли 1 піксель занадто тонкий і 2 пікселі занадто товстий.

Перевірте зображення нижче. У Fedora, коли ввімкнено функцію протизшивання шрифту, шрифти мають товщину, пропорційну розміру шрифту. Нижче товщина різна для 8, 9 та 10pt розмірів. З іншого боку, в Ubuntu, навіть якщо ввімкнено функцію згладжування, усі розміри 8, 9 та 10pt мають товщину 1 пікселя. Це ускладнює читання великої кількості тексту.

Порівнюючи шрифт Fedora 8 та Ubuntu 9.04 проти розшифровки.

Я використовую той самий домашній каталог, і я вже перевірив, що ресурси X однакові в обох системах:

~% xrdb -query | grep Xft
Xft.antialias:  1
Xft.dpi:        96
Xft.hinting:    1
Xft.hintstyle:  hintfull
Xft.rgba:       none

Налаштування GNOME:

~% gconftool-2 -a /desktop/gnome/font_rendering
 antialiasing = grayscale
 hinting = full
 dpi = 96
 rgba_order = rgb

Отже, питання полягає в тому, що я повинен змінити в новій коробці (Ubuntu), щоб отримати антизшивання, як у старому вікні (Fedora)?


8
Чи тільки я вважаю, що шрифти Ubuntu набагато чіткіші та зрозуміліші, ніж шрифти Fedora? Шрифти Fedora виглядають надто розмитими IMHO.
Яба

Мені насправді більше подобається той, що праворуч. Той, що зліва, занадто розмитий. Кожному, правда, кожен. ;)
Саша Чедигов

1
@Yaba, @musicfreak: Якщо у вас CRT-монітори або низька роздільна здатність, вони зліва можуть виглядати занадто розмитими. В іншому випадку вони краще відображають розмір шрифту. Подивіться, як товщина ліній на правому зображенні несподівано стрибає з 1 пікселя на 3 пікселя, збільшуючи розмір шрифту. Це також погано, коли воно проектується. Текст не стає більш читабельним, коли ви збільшуєте розмір шрифту, поки він не надто великий (коли він переходить до 3 пікселів).
Джуліано

1
Крім того, у зразку Ubuntu подивіться, як у третьому рядку тексту відсутній піксель у "k" в "quick", зробивши так, що це два гліфи, "|" і "<".
Джуліано

2
@Juliano Тоді у мене є перший доступний ноутбук із вбудованим монітором CRT :-)
Yaba

Відповіді:


36

Існує старий трюк, щоб зробити шрифти більш гладкими на Ubuntu (і майже кожен дистрибутив із запуском Gnome):

Відкрийте .fonts.conf під домашнім каталогом ( ~/.fonts.conf) і вставте це:

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

Перед:

alt текст

Після:

alt текст


ТОЧНО, що я шукав! Я багато грав з цим файлом, з параметрами 'antialias', 'hinting', 'hintstyle', 'rgba' та 'lcdfilter', і нічого не допомогло. "autohint" зробив це! Лише зауваження: для правильної роботи автонатягу потрібно мати rgba = none. Здається, що автоматичний підказки увімкнено за умовчанням у Fedora, але не в Ubuntu.
Джуліано

2
+1. Божевільно, що це певним чином не з'являється в налаштуваннях шрифту.
Кент Богаарт

3
Сумне роздуми про філософію GNOME, що вам навіть доведеться задавати це питання.
sml

@Juliano Auto-hinting правильно працює з відображенням пікселів, тому rgba = немає.
Адам Бертек

@Adam: Ви зараз чи про це говорили, коли це питання було задано ще у 2009 році (Ubuntu 9.04)?
Джуліано


0

Останні версії Ubuntu дозволяють змінити ці налаштування через Налаштування> Зовнішній вигляд> Шрифти> Деталі

Мені здається, що середній натяк є найприємнішим на моєму РК-екрані.


Так, варіант натяку вже відомий. Параметр "autohint", як згадував Джон Т, - це варіант, який відсутній у цьому діалоговому вікні, в тому числі в останній версії Ubuntu.
Джуліано
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.