Неправильне згладжування шрифту в 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.