seajey: Electronic Knight (Default)
[personal profile] seajey
Долго думал, как начать этот пост и в итоге нашёл в интернетах подходящую цитату:

[...] В WPF используется метод C [ClearType], но не у многих устройств разрешение настолько высокое, чтобы возможное размытие никому не мешало. […] Кого-то устраивает размытие метода C, кого-то нет. Странно, но факт: некоторым удобно читать длинные тексты, отображённые методом C на 96 dpi (например, через Times Reader), но не нравятся окна пользовательского интерфейса. Большинство людей не беспокоит цветная кайма ClearType, но некоторых не устраивает. […] Как для моих глаз, на 96 dpi метод C читается хуже, чем метод A [без антиалиазинга]. Для меня слишком размыто. А на 144 dpi не вижу никаких проблем — отлично читается.

Источник

Так вот, я тоже вижу цветную бахрому вокруг букв при субпиксельном сглаживании и "блюр" при обычном.

*И меня, на самом деле, очень удивляет, почему другие этого безобразия не замечают*

С первых часов освоения линукса я боролся с проблемой нормального для меня отображения шрифтов:
три часа проведенных в Mandriva днём по эффекту равнялись 9 часам работы за Windows XP в ночной смене - в глаза будто песка насыпали плюс Ъ-красноглазие.

Пришлось перелопатить кучу форумов, howto, много и обильно гуглить.
В конечном итоге, необходимая информация нашлась, и на этой неделе я, вроде бы, разобрался с одним из последних кусков головоломки. Конечно, в этом нельзя быть на 100% уверенным, и я знаю, как минимум, один конфиг, который стоило бы изучить отдельно, но в целом картина ясна.


Пробуем жить без сглаживания

Сначала я хотел подробно описать свои мытарства и биения головой об стену, но в итоге решил работать в более конструктивном ключе.

Начну с источников. Есть два хороших и подробных, хотя и несколько уже устаревших мануала:
HowTo Шрифты лучше, чем в Windows
Использование Шрифтов MS TrueType в KDE

Всё что нужно для решения проблемы в них есть, но мне хотелось бы обратить внимание на некоторые частности, на примере kubuntu 8.10

Так как в Kubuntu и openSUSEfedora - нет) freetype собран со включенным BYTECODE INTERPRETER, исходники править и перекомпилировать не нужно.

Вот так выглядят мои настройки шрифтов в systemsetting:



Как видно из скриншота, сглаживание отключено в диапозоне 0-16 пт
Для шрифтов большого размера выставлен полный хинтинг, без межстрочечного сглаживания.

Другая проблема - подобрать подходящие шрифты, содержащие символы кириллицы и прилично выглядящие без антиалиасинга.
Как ни обидно, но более менее вменяемо отображаются ttf-шрифты из набора MS True Type core fonts, Tahoma, Lucida Grande, Lucida Console; из свободных шрифтов - семейство Liberation и дерриатив - Либерастика. Также в консоли исключительно хорошо смотрится бессмертный Terminus. А вот новые вистовские шрифты я забраковал - они изначально расчитаны на сглаживание, и без него нормально рендерятся только в некоторых размерах.
С семействами DejaVu, Bitstream Vera, Nimbus также пришлось расстаться, и прощание вышло долгим и муторным, о чём позднее.

Дальше начинается вкусовщина:
1. Tahoma во все поля, только с разным размером. Замечу, что тахома должна быть оригинальной - с wine'вской у меня наблюдались артефакты отображения - как бы сдвинулись буквы : вместо K стало L и т.д.
2. Минимальным также неплохо смотрится Lucida Console (кстати, полезное применение этому шрифту - выбрать основным в Kruler, чтобы циферки были читабельны под Kmag)
3. Моноширинный - Terminus. Терминус хорош, но не идеален: отсутсвует курсивное начертание. В убунте есть пакет xfonts-terminus-oblique - но это полумера. Так что, вполне можно следовать совету "не выпускать terminus из консоли" (с)
Другие кандидаты на право быть моноширинным шрифтом по-умолчанию: Liberation Mono, Lucida Console, Courier New

Настройки браузеров



Без засечек - Tahoma
С засечками - Georgia
Моноширинный - Liberation Mono

В качестве шрифта с засечками рекомендуется использовать Georgia - курсивное начертание этого шрифта смотрится наиболее прилично. Если не нравится как выглядит тахома-италик, а она действительно не ахти, особенно жирный курсив и цифры, то пропорциональным можно выставить  шрифт с засечками (Georgia, Times New Roman).

Так же не стоит разрешать сайтам использовать свои шрифты.

Konqueror настраивается похожим образом:




Подмена шрифтов


Всё бы ничего, только некоторые сайты или темы superkaramba, как ты не мучайся, всё равно используют какой-то корявый шрифт. Конфиг карамбовской темы можно поправить руками,  с сайтами сложнее.
Но и из этой ситуации есть выход.
Скачиваем, например, отсюда файл fontconfig.tbz, распаковываем и копируем сюда: /etc/fonts файлы alias.conf, local.conf, misc.conf и msfonts-rules.conf (нужны права root)
В первую очередь нас интересуют alias.conf - открываем его в kate (опять же, с правами root)
Рекомендую в Сервис -> Подсветка -> Язык разметки выбрать пункт xml

Также открываем systemsettings, переходим в секцию "Установка шрифтов" и удаляем - важно именно удалить, а не сделать неактивным - шрифты семейства DejaVu, Bitstream Vera, Nimbus.

В alias.conf, по вкусу, настраиваем подмену:

<alias>
    <family>sans serif</family>
    <prefer>
        <family>Tahoma</family>
        <family>Arial</family>
    </prefer>
</alias>

<alias>
    <family>serif</family>
    <prefer>
        <family>Georgia</family>
    </prefer>
</alias>

<alias>
    <family>Bitstream Vera Sans Mono</family>
    <prefer>
        <family>Liberation Mono</family>
        <family>Terminus</family>
    </prefer>
</alias>

<alias>
    <family>Bitstream Vera Sans</family>
    <prefer>
        <family>Tahoma</family>
        <family>Arial</family>
    </prefer>
</alias>

<alias>
    <family>Bitstream Vera Serif</family>
    <prefer>
        <family>Georgia</family>
    </prefer>
</alias>

<alias>
    <family>Nimbus Sans L</family>
    <prefer>
        <family>Tahoma</family>
        <family>Arial</family>
    </prefer>
</alias>

<alias>
    <family>Nimbus Roman No9 L</family>
    <prefer>
        <family>Georgia</family>
    </prefer>
</alias>

<alias>
    <family>Nimbus Mono L</family>
    <prefer>
        <family>Liberation Mono</family>
        <family>Terminus</family>
    </prefer>
</alias>

</fontconfig>

И т.д.

С чем приходится мириться

1. Кривой италик/курсив - в Windows он лучше.
2. Артефакты отображения шрифтов - причём в разной версии freetype свои глюки:
например, в feisty не до конца прорисовывалась вертикальная палочка у цифры семь, а в intrepid проблемы у букв б и P при разных размерах шрифта.

This account has disabled anonymous posting.
(will be screened if not validated)
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

If you are unable to use this captcha for any reason, please contact us by email at support@dreamwidth.org

Profile

seajey: Electronic Knight (Default)
SeaJey

April 2020

S M T W T F S
   1234
567891011
12131415161718
1920212223 2425
2627282930  

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Apr. 6th, 2026 08:24 pm
Powered by Dreamwidth Studios