Опять о шрифтах в Linux (Debian)

Опять о шрифтах в Linux (Debian)

Проблема шрифтов для многих линуксоидов стоит особо остро. Надо признать, шрифты в Linux не особо радуют глаз человека, привыкшего к шрифтам Windows. Windows-шрифты по сравнению со шрифтами Linux кажутся чёткими, контрастными.

Впрочем, справедливости ради, стоит сказать что у меня проблема эта остро встала лишь в Firefox2, который использует библиотеки GNOME.

Кратко опишу те действия, которые я предпринял для настройки шрифтов.

1. В разных статьях советуют первым делом выставить в xorg.conf DPI в 96×96. Все мои попытки сделать это различными способами не удались. X-сервер попросту ложил на эти настройки и всё-равно использовал привычные ему 100×100. Возможно это связано с тем, что я использую фирменный драйвер nvidia и этот драйвер не воспринимает настройки DPI.

Посмотреть DPI запущенного X-сервера можно так:

$ xdpyinfo | grep resolutions
resolution:    100x100 dots per inch

2. Советуют пересобрать библиотеку freefonts2 с поддержкой опции TT_CONFIG_OPTION_BYTECODE_INTERPRETER.

Как я выяснил, эта опция в Debian уже включена специальным патчем! (Это действительно так, я видел этот патч своими глазами!)

3. Советуют поиграться с настройками пакета fontconfig-config примерно таким образом.

# dpkg-reconfigure fontconfig-config

Первый экран: выбираем «Native» для шрифтов, которые установлены в Debian по-умолчанию, или Autohinter, если используются шрифты от Microsoft.

На втором экране выбираем: «Всегда» — если у Вас LCD-монитор (жидкокристаллический дисплей), и «Никогда» — если у вас CRT-монитор (электронно-лучевая трубка).

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

Затем применяем сделанные изменения командой:

# dpkg-reconfigure fontconfig

И перезапускаем X’ы.

4. Выбрать каталоги со шрифтами в xorg. conf. Я у себя оставил лишь две строчки — fixed-шрифты, без которых X-сервер просто не запустится, и TTF-шрифты, которые хорошо масштабируются.

В секции Files остались две строчки:

FontPath        "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType"
FontPath        "/usr/share/fonts/X11/misc"

5. Обычно советуют установить шрифты от Microsoft (разработанные фирмой Monotype), которые находятся в виртуальном пакете msttcorefonts. На самом деле это скрипт, который скачивает шрифты из официальных публичных источников и с помощью утилиты cabextract извлекает их из самораспаковывающихся cab-архивов, дополненных exe-декомпрессором 🙂

Сразу скажу, что шрифты эти я пробовал ставить, но они мне не понравились. В большинстве случаев шрифты выглядели вполне нормально, но в окне Firefox на некоторых сайтах они всё-таки выглядели ужасно.

Я поискал статьи о текущем положении со шрифтами в Linux. И к моему счастью, Алексей Федорчук, в своей статье (см. №2) меня обрадовал.

Как оказалось, в Linux вполне хватает качественных шрифтов.

Шрифты Microsoft (они же Monotype) были мной снесены. Взамен я установил шрифты, имеющиеся в Linux:

# aptitude install ttf-bitstream-vera
# aptitude install ttf-dejavu
# aptitude install ttf-freefont
# aptitude install ttf-linux-libertine
# aptitude install xfonts-terminus

6. Советуют прописать в домашнем каталоге специально настроенный файл .gtkrc-2.0, но и его изменение не оказывало заметных на глаз изменений в шрифтах Firefox.

Чтобы добиться более-менее божеского вида шрифтов в Firefox, в его настройках я прописал использование следующих шрифтов родственных микрософтовским:

  1. Пропорциональный — без засечек, размер — 16,
  2. С засечками — DejaVu Serif,
  3. Без засечек — DejaVu Sans,
  4. Моноширинный — DejaVu Sans Mono, размер — 13,
  5. Наименьший размер шрифта — 10,

и запретил использовать веб-сайтам свои шрифты вместо установленных.

  1. Википедия — Шрифт
  2. Алексей Федорчук. И снова про шрифты в Иксах
  3. Владимир Попов. Рендеринг шрифтов в X Window: как в MS Windows и даже лучше
  4. LOR-FAQ: X-сервер
  5. LOR-FAQ: Desktop
  6. В качестве шутки, в которой есть доля правды, тема на LORе: Ужасные шрифты в Linux (как можно терпеть такое?)

Результат, в принципе, меня удовлетворил (до этого было гораздо страшнее):

Как всегда, буду рад выслушать Ваши наблюдения и наработки по настройке шрифтов в Linux.

Написать автору

Alex Sneg’s Blog — Настройка перфектных или идеальных шрифтов для Debian 10 Buster

Как я готовил шрифты в debian 10 Buster

На линукс я пересел с винды. Первый вопрос в никуда: почему в линуксе из коробки такие ужасные шрифты? Да, мне это было интересно и поначалу тревоги не вызвало, так как искренне считал, что всякие разные настройки обязательно должны быть в линуксе и их нужно просто подкрутить, чтобы получить шрифты виндового качества.

Но затем эта проблема стала основной, достающей меня непрерывно. Виндо-пользователи в моем окружении ходили и едко насмехались над моими «качественными» шрифтами в линуксе. Неужели сложно нормально это всё в дистрибутиве сразу прописать и настроить для пользователя? Вообще говоря, сколько помню в линухе, в любых дистрибутивах до 2018, года шрифты были откровенное говно. Да, мыльное, унылое говно, что бы вы ни делали и какие бы то ни было блоги и рекомендации не читали. И не надо рассказывать, что это такая фича. Нет это не фича, это было просто обычное, банальное говно. И никакие настройки , никакие infinality, никакие ручные, автоматические патчи, настройки не помогали. Шрифты были мыльные, с разной толщиной (особенно доставляли буквы типа Ш и Щ). Все варировалось вокруг вопроса много ли или мало вы себе «мыла» на экран добавите и будете дальше с этим жить-поживать. То есть, выбор бинарный: вы либо получаете «мыло» и более или менее равномерную толщину глифа, либо резкие, но без хинтинга и разной рандомной толшиной глиф (даже внутри одной буквы).
Особенно доставляли приколы с буквой О, которая могла превратиться в полуовал с одной стороны. В GTK приложениях на KDE десктопе, люди в панике лазали по форумам в поисках решений, так как для qt приложений какая-то реакция на изменение настроек еще просматривалась, а в Firefox, например, уже никакой реакции не было практически ни на какие настройки уровня хинтинга, и можно было биться головой о клавиатуру и монитор сколько угодно. Всё, повторяю ВСЁ, что я находил в инете на предмет настройки шрифтов, не давало возможности получить шрифты с равномерным глифом и резким переходом ink->background без муара и гребаного «мыла». Хотя, надо признать, что дистрибутив UBUNTU продвинулся в отношении шрифтов дальше других, и они при помощи забивания XYZ на все патенты, патчили свои freetype  либы, какими-то полулегальными алгоритмами или, что-то там всё же делали в настройках, что оно рисовало шрифты с использованием ихнего же шрифта «UBUNTU» на четверку с минусом. Но зато глиф у них был равномерный (даже в кириллице) по толщине и «мыла» было не так много, но оно все же было, и это был просто злобный линуксойдный замкнутый пи.
.ц, с которым НИЧЕГО нельзя было поделать! Глаза готовы были вытечь в стоящую рядом с клавой чашку холодного чая к концу рабочего дня.

Короче, не помогало НИЧЕГО! Как вдруг у жадного микрософта и бессовестных огрызков закончились патенты на очевидные и правильные, как топор, алгоритмы рисования шрифтов, и свершилось оно — libfreetype включил наконец все алгоритмы качественного хинтинга в компиляцию по дефолту. Без преувеличения, случилось чудо! И теперь можно получить от линукса те шрифты, которые пользователи MS Windows и MAC привыкли иметь на своих десктопах.

Сразу скажу, я привык к KDE Plasma десктопу. Унылое UNITY убунты мне не интересно как класс. Поэтому, дальше речь пойдет только о варианте, как настроить нормальные шрифты для Debian 10 Buster с десктопом KDE. Причем, сделать это так, чтобы шрифты были перфектные (идеальные) не только в родных QT приложениях, но и в тех, которые созданы и работают под GTK, Xfce и прочее графическое окружение.

 

Для того, чтобы понять какое качество шрифтов для меня перфектно, вот BMP скрины с моего текущего рабочего PLASMA десктопа QT и GTK приложений, которые получаются после настроек, приведенных в данном рекорде:

  • Текстовый редактор QT native Screenshot
  • Krusader QT native Screenshot
  • PHP Shtorm (я думаю это xfce, хотя не факт чего там ява использует для рисования, но точно уж не QT) Screenshot
  • Wine (это вообще непонятно как работает, но тем не менее) Screenshot
  • Firefox — Yandex Home Page (GTK3) Screenshot
  • Firefox — BBC News (мелкий шрифт) Screenshot

Ну вот как-то так.

Это то, что я называю «мыла» нет, а местные любители винды в нашем офисе ходят теперь и завидуют молча 🙂

Теперь о том, как такого добиться по шагам. Эта инструкция выстрадана лично мной, для варианта Debian 10 Buster, KDE desktop, Plasma, QT5.11

После установки дебиана нам понадобятся совершить следующие действия:

1) монитор 2к и более (если не 2к а full HD, то совсем избавиться от «мыла» в шрифтах не получится, но оно снизится до приемлемого уровня)

2) Если freetype library не самой последней версии, то проапдейтить, вплоть до того, чтобы скачать исходники и накомпилять. Для Debian 10 это не требуется, но если вы будете применять эту инструкцию для Debian 9 Stretch, то обновить freetype через исходники будет необходимо. Связано это с тем, что начиная с какого-то момента (2018г или чуть ранее) закончились патенты жадных MS и огрызков. В результате, начиная с версии 2.8.1 убраны все ограничения и включены максимально профитные алгоритмы хинтинга, без которых не добиться идеальных шрифтов. Конкретно у меня стоит версия freetype-2.10.1 Из коробки Debian 10 имеет freetype-2.9.x и с ним тоже должно работать без перекомпиляции. Но в Debian 9 из коробки неправильная низкая версия этой библиотеки, поэтому качайте с github свежак и компиляйте с дефолтными параметрами — ничего особенного в ./configure включать не требуется.

3) Поставить шрифты
— Arial
— Courier
— Liberation
— Tahoma
— Verdana

apt-get install fonts-liberation fonts-liberation2 ttf-mscorefonts-installer


Может так получиться, что Tahoma и Verdana вероятно придется стырить у винды. Тырим прямо файлы ttf и закидываем в каталог со шрифтами /usr/share/fonts/что_то_еще в том случае, если ttf-mscorefonts-installer их не содержит. У меня выглядит так:

sneg@sneg:/usr/share/fonts$ find ./ -iname «Tahoma*»
./truetype/msttcorefonts/tahomabd.ttf
./truetype/msttcorefonts/tahoma.ttf

sneg@sneg:/usr/share/fonts$ find ./ -iname «Verdana*»
./truetype/msttcorefonts/verdanab. ttf
./truetype/msttcorefonts/Verdana.ttf
./truetype/msttcorefonts/Verdana_Italic.ttf
./truetype/msttcorefonts/verdana.ttf
./truetype/msttcorefonts/verdanaz.ttf
./truetype/msttcorefonts/Verdana_Bold_Italic.ttf
./truetype/msttcorefonts/Verdana_Bold.ttf
./truetype/msttcorefonts/verdanai.ttf
sneg@sneg:/usr/share/fonts$

sneg@sneg:/usr/share/fonts$ find ./ -iname «Liberation**»
./truetype/liberation
./truetype/liberation/LiberationMono-Bold.ttf
./truetype/liberation/LiberationSansNarrow-Italic.ttf
./truetype/liberation/LiberationSansNarrow-Regular.ttf
./truetype/liberation/LiberationSansNarrow-BoldItalic.ttf
./truetype/liberation/LiberationSansNarrow-Bold.ttf
./truetype/liberation/LiberationMono-Regular.ttf
./truetype/liberation/LiberationSerif-Bold.ttf
./truetype/liberation/LiberationSerif-BoldItalic.ttf
./truetype/liberation/LiberationSerif-Italic.ttf
./truetype/liberation/LiberationSans-BoldItalic.ttf
./truetype/liberation/LiberationSerif-Regular. ttf
./truetype/liberation/LiberationMono-Italic.ttf
./truetype/liberation/LiberationSans-Regular.ttf
./truetype/liberation/LiberationMono-BoldItalic.ttf
./truetype/liberation/LiberationSans-Bold.ttf
./truetype/liberation/LiberationSans-Italic.ttf
./truetype/liberation2
./truetype/liberation2/LiberationMono-Bold.ttf
./truetype/liberation2/LiberationMono-Regular.ttf
./truetype/liberation2/LiberationSerif-Bold.ttf
./truetype/liberation2/LiberationSerif-BoldItalic.ttf
./truetype/liberation2/LiberationSerif-Italic.ttf
./truetype/liberation2/LiberationSans-BoldItalic.ttf
./truetype/liberation2/LiberationSerif-Regular.ttf
./truetype/liberation2/LiberationMono-Italic.ttf
./truetype/liberation2/LiberationSans-Regular.ttf
./truetype/liberation2/LiberationMono-BoldItalic.ttf
./truetype/liberation2/LiberationSans-Bold.ttf
./truetype/liberation2/LiberationSans-Italic.ttf
sneg@sneg:/usr/share/fonts$


После установки нужно обновить кэш шрифтов:


fc-cache -f

Отдельно, на примере тахомы, обращу внимание на тот факт, что шрифт содержит отдельно файл tahoma. ttf и отдельно tahomabd.ttf То есть, надо понимать, что для того чтобы получить качественный Tahoma Bold нужен именно tahomabd.ttf, содержащий нативный правильный внутренний хинтинг. Конечно, freetype может путем вычисления попытаться отрисовать tahoma bold на базе tahoma.ttf но это будет говно шрифт. И это именно то, от чего я пытался избавиться, и оно получится, если вы все сделаете по инструкции.

4) Убеждаемся, что теперь freetype цепляет их правильно (в особенности шрифты с bold атрибутом в запросе):

sneg@sneg:/home$ fc-match «Courier»
Courier_New.ttf: «Courier New» «Обычный»
sneg@sneg:/home$ fc-match «Tahoma»
tahoma.ttf: «Tahoma» «Обычный»
sneg@sneg:/home$ fc-match «Verdana»
Verdana.ttf: «Verdana» «Обычный»
sneg@sneg:/home$ fc-match «Arial»
Arial.ttf: «Arial» «Обычный»
sneg@sneg:/home$ fc-match «Liberation Mono»
LiberationMono-Regular.ttf: «Liberation Mono» «Regular»
sneg@sneg:/home$ fc-match tahoma:bold
tahomabd.ttf: «Tahoma» «Полужирный»
sneg@sneg:/home$ fc-match verdana:bold
Verdana_Bold. ttf: «Verdana» «Полужирный»
sneg@sneg:/home$


Для моношрифтов самый качественный рендеринг у шрифта Liberation Mono. А шрифты Droids, DejaVu, Bitstream-Vera они отстойные и хинтинг у них дерьмовый. Хотя почему-то именно их пытаются дистрибутивы продвигать по дефолту (особенно в правилах подмены всяких Sans шрифтов).

Если fc-match показывает какое-то несоответствие, например на Arial говорит, что цепляет какой-то DejaVu, то идем в папку:


cd /etc/fonts/conf.d


там куча xml файлов с правилами подмены. Мы пытаемся понять, какое правило подменяет наш Arial на странное говно. Подмена осуществляется именно там в правилах. Ищите по инету правила синтаксиса этих файлов, они расписаны довольно подробно и широко.

Если там не найдено правило подмены, то еще один вариант — это в самом домашнем ~/ каталоге текущего юзера. Там есть более приоритетный файл ~/.fonts.conf возможно он содержит более приоритетное правило. Этот файл нам еще понадобится, поэтому далеко его не убираем.

файл ~/.fonts.conf должен быть symlink на ~/.config/fontconfig/fonts.conf

Или поддерживайте полную копию. Подозреваю, что некоторые приложения тупо лезут на прямую в ~/.config/fontconfig/fonts.conf, а некоторые в ~/.fonts.conf

5) после того, как все шрифты установлены, нужно задать их правильно в настройках для окружения десктопов:

— KDE
— GTK-2
— GTK-3
— Xfce

Хотя установлен только один десктоп — KDE Plasma, но жопа состоит в том, что все эти 4 среды частично используют настройки друг друга, а частично цепляют их из своих оригинальных специфичных файлов конфигов. А бывает так, что некоторые приложения целенаправленно лезут напрямую в какой-то файл конфига специфичный для того десктопа, который для них нативен, вместо того, чтобы спросить настройку через DBUS. Этот зоопарк никак не лечится, кроме как подготовкой всех возможных конфигов и костылей, которые могут быть зацеплены разными legacy приложениями в разных ситуациях в зависимости от продвинутости авторов, которые эти приложения писали. Системы унифицированного подхода для получения настроек по шрифтам, как правило, никакой нет. И каждое приложение может запросто изобрести свое собственное колесо в зависимости от той графической среды, для которой оно писано изначально. Однако, максимальный уровень полёта фантазий в любом случае находится в границах следующего списка настроечных файлов, которые представлены ниже.

Итак, для дальнейшей работы нам потребуются следующие файлы разных конфигов:

~/.gtkrc-2.0-kde4
~/.gtkrc-2.0
~/.Xresources
~/.config/gtk-3.0/settings.ini
~/.config/kdeglobals
~/.config/kcmfonts
~/.Xdefaults
~/.fonts.conf

Если каких-то файлов не существует, то мы их создаем, не стесняемся 🙂

Иногда отдельные упорные super-duper font-settings админы хотят подкрутить что-то в файле /etc/fonts/local.conf Ну скажу так, такая припарка затронет лишь 5% софта, из которых 90% вам на..х не нужна и вы никогда его не пользуете. Поэтому, если вам хочется, то можете сюда задублировать ~/. fonts.conf Но, как показывает практика, смысла нет.

Отдельных «теплых» слов заслуживают нано-блоггеры, которые предлагают поставить qt5ct и чего-там настроить. Механизм работы этого костыля основан на создании некоторого файла схожего по параметрам с ~/.config/kdeglobals и переменных окружения XDG_SESSION_DESKTOP, XDG_CURRENT_DESKTOP, QT_QPA_PLATFORMTHEME. У меня они показывают вот что:

sneg@sneg:/home$ env | grep -E ‘(KDE|QT)’
XDG_SESSION_DESKTOP=KDE
XDG_CURRENT_DESKTOP=KDE
KDE_SESSION_UID=1000
KDE_SESSION_VERSION=5
QT_AUTO_SCREEN_SCALE_FACTOR=0
QT_ACCESSIBILITY=1
KDE_FULL_SESSION=true

После qt5ct должно быть что-то такое:

XDG_SESSION_DESKTOP=KDE
XDG_CURRENT_DESKTOP=KDE
QT_QPA_PLATFORMTHEME=QT5CT

При старте QT5 приложение подхватывает из env окружения эти значения и лезет не в kdeglobals, а в новый файл настроек созданный qt5ct. Но во-первых, поддержа в коде QT5 значения QT_QPA_PLATFORMTHEME=QT5CT довольно отстойная (намного хуже, чем дефолтное KDE) и не все параметры отрабатываются так, как об этом думают создатели qt5ct. А во-вторых, зачем плодить баян, если есть штатный ~/.config/kdeglobals ?? Поэтому, зная как это работает, мы не будем идти путем bla-bla-bla блоггеров, которые даже не удосуживаются изучать некоторые полезные исходные коды, и не будем использовать qt5ct. А если вы уже поставили это г…, то ваш путь atp-get purge qt5ct и т.д. по стандартам. Верните переменные окружения XDG_SESSION_DESKTOP и XDG_CURRENT_DESKTOP в дефолтное KDE значение, а QT_QPA_PLATFORMTHEME удалите из env совсем. И идите дальше к п.6 моих рекомендаций.

6) Выясняем свой DPI. Делаем это при помощи линейки и калькулятора. Как это делать расписывать здесь не буду. Алгоритмов вычисления полно на разных форумах и блогах, поищите сами. Для доверчивых существует утилита xdpyinfo. Она печатает на экране ваш dpi. Ну по мне так линейка или штангель дает более надежную информацию.

У меня для монитора 2к получилось 118 dpi, а для full hd монитора будет скорее всего 96dpi. Но вы должны выяснить это точно перед тем, как двигаться дальше.

7) Открываем стандартные настройки KDE через меню плазмы


Меню -> Настройки -> Параметры системы -> Шрифты
Настраиваем:
Обычный текст: Verdana 10
Моноширинный: Liberation Mono 10
Маленький: Verdana 8
Панель инструментов: Verdana 9
Меню: Verdana 10
Заголовок окна: Verdana 10
Сглаживание: Вкл
Тип субпиксельной отрисовки: Как во всей системе
Стиль хинтинга: Как во всей системе
Использовать другой DPI: 118 (Это мой, у вас будет какой-то свой)


Теперь идем в меню:
Меню -> Настройки -> Параметры системы -> Оформление приложений
Выбираем закладку Стиль программ GNOME (GTK+) (Если такой закладки нет, то установите этот пакет через apt-get)
здесь выбираем шрифт: Verdana 10

Остальные настройки темы и курсоров ставьте на свой вкус. После проделанных изменений, все настройки применяем и сохраняем

8) открываем (если не существует, то создать как ссылку на ~/.config/fontconfig/fonts.conf )
редактором файл ~/. fonts.conf и заменяем полностью его содержимое на:

<?xml version=’1.0′?>
<!DOCTYPE fontconfig SYSTEM ‘fonts.dtd’>
<fontconfig>
<dir>~/.fonts</dir>
<match target=»font»>
<edit name=»rgba» mode=»assign»>
<const>rgb</const>
</edit>
<edit name=»hinting» mode=»assign»>
<bool>true</bool>
</edit>
<edit name=»embeddedbitmap» mode=»assign»>
<bool>true</bool>
</edit>
<edit name=»autohint» mode=»assign»>
<bool>false</bool>
</edit>
<edit name=»hintstyle» mode=»assign»>
<const>hintfull</const>
</edit>
<edit name=»antialias» mode=»assign»>
<bool>true</bool>
</edit>
<edit name=»lcdfilter» mode=»assign»>
<const>lcddefault</const>
</edit>
</match>
</fontconfig>

Сохраняем его содержимое. Желающие могут в wiki помойке найти, что там и о чём. Здесь углубляться не будем.

Отдельные представители линукс-админсткой тусовки сейчас начнут мне делать замечания о том, почему я в этом файле dpi не зафорсил через «assign» узел. Отвечаю: ни один рендер шрифтов QT5 этот параметр отсюда не читает, а GTK приложения сюда вообще не заходят. Не всё то правда, что WIKIпедия-помойка пишет. Поэтому, комментаторы по этому поводу приходят сюда только с куском исходного кода, который доказывает, что DPI из этого файла хоть на что-то влияет. Если пример конкретных строк исходников не приведёте, я вам даже отвечать не буду. Если же у вас подгорает, то можете сюда добавить assign dpi XML узел, примеров у псевдо блоггеров полно на эту тему.

9) Открываем теперь файл ~/.config/kdeglobals редактором

находим секцию:
[General]
В ней нас интересуют следующие ключи:

XftAntialias=true
XftHintStyle=
XftSubPixel=
fixed=Liberation Mono,10,-1,5,50,0,0,0,0,0,Обычный
font=Verdana,10,-1,5,50,0,0,0,0,0,Обычный
menuFont=Verdana,10,-1,5,50,0,0,0,0,0,Обычный
smallestReadableFont=Verdana,8,-1,5,50,0,0,0,0,0,Обычный
toolBarFont=Verdana,9,-1,5,50,0,0,0,0,0,Обычный

Задача — убрать в конце «Обычный». Это нужно для того, чтобы qt 5.11 не глючило при попытке нативной отрисовки Bold & Italic шрифтов. Начиная с версии qt 5.9 писатели qt вдруг обнаружили, что у них есть глюк при выборе шрифта в классе QFont который игнорировал параметр «, Regular» в строке параметров шрифта. Они «исправили» его. Да, теперь он работает, но в результате bold шрифты qt пытается рисовать теперь не нативно из файла tahomabd.ttf, а само что-то там вычисляет из файла tahoma.ttf, и вычисляет глючно. А всё потому, что ни одно приложение не просит bold шрифт по имени «Tahoma Bold», а просит его как «Tahoma», а потом говорит QFont.setBold(true). Я вот хочу спросить QT писателей, если конечно они внезапно прочитают мои дневники, вы вот, прежде чем что-то менять на эту тему, вопрос глубоко изучили? Вы все сотни тысяч уже готовых QT4/5 приложений и их авторов хотите заставить, чтобы они начали менять свои исходники только потому, что вы вдруг решили, что у вас 10 лет в коде глюк, который работает не так как вами задумано, но именно так, как всем кроме вас нравится? Вы им уведомления уже разослали, что теперь надо шрифты вызывать не просто по имени, но и доблять атрибут прямо к имени шрифта, если хотите натива в рендеринге?

Патчить qt 5. 11 на предмет setBold() и прочего долго и не продуктивно, поэтому, чтобы заставить qt 5.11 брать нативные ttf файлы для bold и italic традиционными QT приложениями нужно в описании шрифтов убрать последний параметр «, Обычный» или «, Regular». Откуда такая странная и неочевидная связь между удалением этого куска текста из параметра описания шрифта и ожидаемым результатом, углубляться не буду. Особо любопытные могут отправиться изучать исходники QT5.11, а у верующих должно получиться так:

[General]
XftAntialias=true
XftHintStyle=
XftSubPixel=
fixed=Liberation Mono,10,-1,5,50,0,0,0,0,0
font=Verdana,10,-1,5,50,0,0,0,0,0
menuFont=Verdana,10,-1,5,50,0,0,0,0,0
smallestReadableFont=Verdana,8,-1,5,50,0,0,0,0,0
toolBarFont=Verdana,9,-1,5,50,0,0,0,0,0

еще одно место в секции
[WM]
activeFont=Verdana,10,-1,5,50,0,0,0,0,0,Обычный

нужно привести к виду:
[WM]
activeFont=Verdana,10,-1,5,50,0,0,0,0,0


Сохраняем ~/.config/kdeglobals

Если для кого-то размеры моих шрифтов окажутся слишком мелкими или крупными, то потом вернетесь в этот файл и поменяете размеры шрифта под себя.

Теперь помним, что если мы опять в графике исправим секцию шрифтов и сохраним изменения,
то параметр «, обычный» вернется и тогда снова идем в файл ~/.config/kdeglobals
и удаляем его вновь.

10) Заставляем приложения GTK-2.0 работать с человеческим шрифтом


Для этого открываем файл ~/.gtkrc-2.0-kde4 или создаем его, если он не создан.

Внутри должно быть примерно такое:

# File created by KDE Gtk Config
# Configs for GTK2 programs

include «/usr/share/themes/Breeze/gtk-2.0/gtkrc»
style «user-font»
{
font_name=»Verdana»
}
widget_class «*» style «user-font»
gtk-font-name=»Verdana 10.5″
gtk-theme-name=»Breeze»
gtk-icon-theme-name=»oxygen»
gtk-fallback-icon-theme=»Adwaita»
gtk-cursor-theme-name=»Classic-Flat-White»
gtk-toolbar-style=GTK_TOOLBAR_ICONS
gtk-menu-images=1
gtk-button-images=1
gtk-primary-button-warps-slider=0

Основное здесь: font_name=»Verdana» и gtk-font-name=»Verdana 10. 5″
Если просматривается что-то типа «Обычный» или «Regular», то убираем их. Остальные ключи ставим по своему вкусу. Размер 10.5 влияет на размер шрифта по умолчанию. Помним об этом и правим его, если в GTK приложениях меню слишком мелкое. И да, дробное выражение тоже поддерживается!


Еще один файл для gtk-2.0:
~/.gtkrc-2.0

Если его нет, то создаем его. Его содержимое должно в точности повторять содержимое файла ~/.gtkrc-2.0-kde4
Можно просто создать symlink, если редактировать в лом.

11) GTK-3.0

Для таких приложений нужно открыть или создать файл ~/.config/gtk-3.0/settings.ini
Проконтролировать, чтобы его содержимое было таким:

[Settings]
gtk-application-prefer-dark-theme=false
gtk-button-images=1
gtk-cursor-theme-name=Classic-Flat-White
gtk-fallback-icon-theme=Adwaita
gtk-font-name=Verdana 10.5
gtk-icon-theme-name=oxygen
gtk-menu-images=1
gtk-primary-button-warps-slider=0
gtk-theme-name=Breeze
gtk-toolbar-style=GTK_TOOLBAR_ICONS
gtk-xft-hinting=1
gtk-xft-hintstyle=hintfull
gtk-xft-rgba=rgb

Основные ключи, которые нужно проконтроллировать: gtk-font-name, gtk-xft-hinting, gtk-xft-hintstyle, gtk-xft-rgba
Остальные ставьте по своему вкусу. Мой размер 10.5 можете исправить под себя.

12) обучаем шрифтам приложения XFCE:

Открываем или создаем файл ~/.Xresources
Его содержимое должно быть таким:

Xft.autohint: 0
Xft.hinting: 1
Xft.lcdfilter: lcddefault
Xft.hintstyle: hintfull
Xft.antialias: 1
Xft.dpi: 118
Xft.rgba: rgb

Xft.dpi — ставим своё, вычисленное


открываем или создаем файл ~/.Xdefaults
Его содержимое должно быть таким:

Xft.autohint: 0
Xft.hinting: 1
Xft.lcdfilter: lcddefault
Xft.hintstyle: hintfull
Xft.antialias: 1
Xft.dpi: 118
Xft.rgba: rgb

Xft.dpi — ставим своё, вычисленное


13) Отдельные странные приложения пытаются узнать dpi напрямую из такого файла: ~/.config/kcmfonts

Поэтому мы редактируем его, и создаем с содержимым таким:


[General]
dontChangeAASettings=false
forceFontDPI=118

forceFontDPI — устанавливаем своё

14) После всех этих изменений делаем reboot.


После ребута убеждаемся, что мы видим следующие настройки:

sneg@sneg:/etc/fonts/conf. d$ xrdb -query | grep Xft
Xft.antialias: 1
Xft.autohint: 0
Xft.dpi: 118
Xft.hinting: -1
Xft.hintstyle: hintfull
Xft.lcdfilter: lcddefault
Xft.rgba: rgb
sneg@sneg:/etc/fonts/conf.d$

Xft.hinting=-1 <- Это означает «по умолчанию». Похоже .Xdefaults не читается автоматически.
Тогда можно попробовать насильно затолкать:


xrdb -merge ~/.Xresources

После этого Xft.hinting должно показывать =1 На самом деле, -1 или +1 я разницы для приложений не заметил. 99%, что все приложения -1 воспринимают как 1

Теперь убеждаемся, что gtk подхватило настройки:

sneg@sneg:~$ gtk-query-settings | grep xft
gtk-xft-antialias: 1
gtk-xft-hinting: 1
gtk-xft-hintstyle: «hintfull»
gtk-xft-rgba: «rgb»
gtk-xft-dpi: 120832
sneg@sneg:~$


gtk-xft-dpi у вас будет свое. В моем случае 120832 = 118dpi


15) Теперь во всех своих любимых приложениях в настройках выбирайте шрифты:
— Liberation Mono
— Liberation Sans
— Verdana
— Courier

Для Wine хорошо смотрятся Arial и Liberation Sans

enjoy :))))

И помним, что если поковыряли настроки в визульном редакторе
Меню -> Настройки -> Параметры системы -> Шрифты
Меню -> Настройки -> Параметры системы -> Оформление приложений

То идем и заново проверяем файл ~/. config/kdeglobals как минимум, а
возможно еще поехал файл ~/.fonts.conf

 

20 худших шрифтов, которых лучше избегать

Главная » Вдохновение для дизайна » 20 худших шрифтов, которых вам определенно стоит избегать

Шрифты всегда важны, нужно ли вам написать официальное письмо, резюме или любой цифровой маркетинговый пост. Вы всегда должны уделять особое внимание шрифтам, поскольку они могут донести мощное сообщение или отвлечь внимание читателя. Есть некоторые шрифты, которые просто не так популярны, и основная причина этого в том, что они используются слишком часто, просто уродливы, нечитаемы или просто не подходят для передаваемого сообщения.

Шрифты можно использовать по-разному: некоторые шрифты используются для заголовков, а другие — для татуировок. Каким бы ни было ваше использование, важно выбрать правильный шрифт.

Эта статья покажет вам некоторые из шрифтов, которые вы, , возможно, захотите избежать, , и поэтому мы подготовили список из 20 худших шрифтов, от которых вам определенно нужно уклоняться.
Основная причина, по которой некоторые шрифты стали настолько непопулярными, заключается в чрезмерном использовании. Шрифты должны поддерживать интерес читателей, поэтому, если вы используете игривый шрифт для чего-то довольно серьезного, читатели мгновенно теряют свое внимание. Или, если вы используете повседневный шрифт, который все могут видеть повсюду, то вы просто потеряли внимание читателей, особенно когда исследования показали, что люди тратят максимум 6 минут на сканирование одного бумажного документа. Итак, если вы создаете маркетинговые материалы, работаете в веб-дизайне или графическом дизайне, просто обратите внимание на шрифты и избегайте использования заведомо плохих шрифтов. И только потому, что вы получили некоторые шрифты бесплатно, это не обязательно означает, что вам нужно их использовать.
Самое главное, используйте шрифт, который люди могут прочитать. Итак, мы надеемся, что следующий список из 20 плохих шрифтов поможет вам решить, какие шрифты использовать в будущем.

Комикс Санс

Pin

Comic Sans — шрифт, который многие считают плохим, несмотря на то, что он очень популярен и почти чрезмерно используется во многих материалах. Его больше не воспринимают всерьез и используют, в частности, для приглашений на детские праздники, листовок и других плохих маркетинговых материалов. Кроме того, Comic Sans просто обозначает любительский подход, который может испортить имидж компании, используя его в коммуникационных или рекламных материалах.

Брэдли Хэнд

Pin

Bradley Hand — шрифт, имитирующий почерк. Кто бы этого хотел? Несмотря на то, что он был разработан с некоторыми дефектами по краям, чтобы как можно больше отображать настоящий почерк, этот шрифт особенно проблематичен для печати.

Курьер

Pin

Courier — еще один часто используемый материал как в маркетинге, так и в дизайне. Хотя он был разработан для легкого чтения, этот шрифт совершенно не привлекает внимания и не подходит для заголовков или текстов с высоким шрифтом.

Керлз

Pin

Если вы девочка до 10 лет, то, безусловно, вы можете и должны использовать этот шрифт для приглашений, которые вы будете отправлять своим друзьям на чаепитие. В противном случае у вас нет причин использовать этот шрифт. Curlz уже имеет негативную репутацию, и если вы планируете его использовать, то наверняка читатель свяжет его с незрелостью вне зависимости от сообщения.

Траян Про

Pin

Шрифт Trajan имеет определенную претензию, но в некоторых ситуациях он уместен. Дизайн этого шрифта вдохновлен текстами, связанными с колонной Траяна, памятником, посвященным одноименному римскому императору. Шрифт состоит только из прописных букв, что затрудняет чтение, особенно официальных документов, таких как резюме или отчеты.

Папирус

Pin

Papyrus — это шрифт, который больше используется в маркетинге, различных публикациях в СМИ и графическом дизайне, и до сих пор является очень популярным шрифтом, хотя он не слишком подходит для многих материалов, на которых он используется.

Сценарий кисти

Pin

Brush Script — еще один шрифт, которым злоупотребляют, и он имеет несколько художественный и женственный вид.

Вивальди

Pin

Только представьте, когда вам придется использовать такой шрифт. Может быть, в школьной газете, в маркетинговых материалах, связанных с классической музыкой, в листовках для концертов классической музыки или в театрах. это шрифт с определенным престижем, но часто используемый неправильно.

Удар

Pin

Название говорит само за себя. Если вы планируете произвести сильное впечатление на читателя, то Impact — идеальный выбор. Хотя Impact лучше подходит для выделения любых заголовков или субтитров, он снова используется слишком часто и во многих случаях его невозможно прочитать.

Готический век

Pin

Кто хоть раз не пользовался Century Gothic? Несмотря на то, что он имеет аккуратный и современный вид, этот шрифт слишком часто используется во многих официальных документах, таких как резюме и отчеты.

Футура

Булавка

Futura очень похожа на Century Gothic, но имеет более слегка волнистую форму и не подходит для каких-либо официальных документов.

Авенир

Pin

Avenir — еще один шрифт, который слишком часто используется во многих маркетинговых материалах.

Дидо

Pin

Didot лучше всего подходит для журналов и маркетинговых материалов, связанных с модой, но многие используют его для официальных документов.

Констанция

Пин

Constantia имеет закругленные формы букв, которые делают его более дружелюбным, но опять же, это не так хорошо, если вы планируете использовать его для официальных документов.

Калибри

Pin

Calibri — еще один популярный и часто используемый шрифт, который вы видите почти везде.

Лато

Pin

Lato — еще один довольно популярный шрифт, впервые созданный специально для корпоративных компаний. Он имеет нейтральный вид, и вы можете загрузить его из шрифтов Google.

Камбрия

Pin

Cambria — это шрифт, которого следует избегать, если вы планируете писать резюме или школьную работу. Несмотря на то, что он довольно популярен, его не так легко читать и он не кажется серьезным.

Джилл Санс

Pin

Gill Sans — очень старый шрифт, поэтому он очень популярен. Он имеет как современный, так и классический вид и использовался во многих маркетинговых материалах на протяжении многих лет.

Гарамонд

Pin

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

Медная готика

Pin

Copperplate Gothic явно плохой и старый шрифт. На дизайн этого шрифта повлияли как римская, так и викторианская эпохи, и в нем используются только заглавные буквы. Тонкий шериф этого шрифта может создать некоторые проблемы при печати тиснения. Другим негативным аспектом является то, что все буквы похожи по дизайну и могут быть чрезвычайно трудными для чтения. Убедитесь, что вы не будете использовать этот шрифт при работе над своим резюме.

Автор

Игги

Игги — предприниматель, блоггер и дизайнер, который любит экспериментировать с новыми методами веб-дизайна, сопоставлять креативные дизайны веб-сайтов и писать о последних дизайнерских шрифтах, темах, плагинах, вдохновении и многом другом. Вы можете следить за ним в Твиттере

худших шрифтов! 11 примеров плохой типографики в печати

Шрифты похожи на знаменитостей: одни знамениты, а другие могут быть откровенно печально известными. Когда аудитория видит шрифт в дизайне вашего печатного издания, который она просто не может вынести (будь то чрезмерно используемый, уродливый или нечитаемый), вы можете потерять их внимание в мгновение ока.

Мы уже обсуждали, как правильно использовать типографику в вашем печатном медиа-проекте, но есть еще одно правило, которое дизайнеры печати должны принять во внимание: избегайте использования заведомо плохих шрифтов в своих проектах.

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

Comic Sans

Использование Comic Sans — это простой способ сделать ваш дизайн детским и непрофессиональным.
Фото: Carbon Arc

Давайте начнем с самого очевидного выбора для некачественной типографики. Comic Sans на сегодняшний день является одним из самых ненавистных и уродливых шрифтов в графическом дизайне. То, что начиналось как забавная имитация надписей из комиксов, быстро стало ужасным шрифтом для приглашений на детские дни рождения, листовок о потерянных собаках, объявлений о распродажах в гараже и, к сожалению, ряда неудачных стартапов.

Comic Sans мгновенно напоминает людям о любительском графическом дизайне, который может нанести ущерб как имиджу бренда вашего клиента, так и вашей карьере профессионального дизайнера.

Arial

Помимо ужасной пунктуации, шрифт Arial, использованный в этом флаере, довольно плоский и скучный.
Фото: Carbon Arc

Поскольку Arial долгое время был шрифтом по умолчанию для Microsoft Office (с тех пор он был заменен Calibri), он приобрел репутацию скучного и ленивого шрифта.

Эстетически в шрифте нет ничего плохого. Он выглядит чистым, простым и почти сносной имитацией Helvetica, но, к сожалению, он также устарел и прост. У Arial больше нет той популярности, которая была когда-то, и некоторые утверждают, что у него никогда не было популярности.

Папирус

Несмотря на то, что «Аватар» получил хорошие отзывы, маркетинг фильма подвергся резкой критике за использование Папируса.

Когда дело доходит до худших шрифтов для печати, Papyrus — это нечто особенное. Мало того, что он слишком часто используется в дизайне печатных СМИ, это также избитый, непрофессиональный и уродливый шрифт, который никогда не выглядел хорошо с самого начала.

Вы можете найти примеры папируса на всем, от постеров фильмов до поздравительных открыток, что бесконечно раздражает критиков плохой типографики.

Несовершенный зернистый эффект, который делает Papyrus похожим на древнегреческую табличку, также затрудняет оттиск шрифта с помощью тиснения или тиснения фольгой.

Brush Script

Шрифт Brush Script, используемый для заголовка этой открытки, делает ее довольно устаревшей.

Подключенные шрифты с небольшими завитушками (например, Brush Script) также могут создавать проблемы при печати определенными способами. Однако это не единственная причина, по которой Brush Script — ужасный шрифт. Это устаревший шрифт, который использовался в печатных СМИ с тех пор, как бэби-бумеры были младенцами.

Ностальгическая типографика может стать большим подарком для вашего печатного дизайна; некоторые из лучших бесплатных шрифтов для печати, которые мы собрали, имеют ретро-ностальгический вид. Но в случае с Brush Script это путешествие по переулку памяти, которое никто (особенно младшая аудитория) не хочет совершать.

Усталый, заезженный готический стиль Copperplate был особенно заметен в этой чрезмерной «сцене с визитной карточкой» из «Американского психопата».

Copperplate Gothic

Говоря о старых, плохих шрифтах, Copperplate Gothic практически древний. На шрифт повлияла как римская резьба по камню, так и печать вывесок викторианской эпохи, и с начала 19 века он наскучил публике.00с.

Тонкие засечки этого шрифта могут затруднить правильное тиснение или печать фольгой, а сами буквы могут быть трудночитаемыми, поскольку все они имеют одинаковый дизайн.

Curlz

Люди часто используют шрифт Curlz, пытаясь придать своим маркетинговым материалам забавный, праздничный вид, но обычно это приводит к тому, что они выглядят пошло.

Единственный раз, когда вам нужно что-то печатать в Curlz, это если вы делаете приглашения на день рождения 6-летней девочки — и даже тогда вы обязаны использовать более креативный шрифт для этой маленькой девочки.

Curlz дает декоративным шрифтам ужасную репутацию из-за своих чрезмерно причудливых, чрезмерно приторных завитков, которые очень проблематичны для методов отпечатка, которые не могут обрабатывать мелкие детали. Хуже всего то, что Curlz ассоциируется с незрелостью и может производить впечатление дешевой безвкусицы.

Vivaldi

Хотя шрифт Vivaldi кажется довольно подходящим в этой ситуации, он также делает этот плакат невероятно трудным для чтения. Фото: Michael Sporl

Если вы хотите, чтобы ваши печатные издания выглядели как чье-то свадебное приглашение, используйте Vivaldi. В то время как завитушки и завитки в Curlz делают его глупым, те же самые элементы в Vivaldi делают его излишне драматичным.

Шрифт Vivaldi часто используется для имитации рукописной каллиграфии, поэтому ваша аудитория больше не будет обманута этой бледной имитацией настоящего шрифта. Не говоря уже о том, что попытка прочитать все эти циклы и завитки может стать головной болью.

Bradley Hand

Bradley Hand делает этот знак для солярия больше похожим на грязный черновик. Фото: Джейн Домингес

Брэдли Хэнд представляет противоположный конец спектра рукописных шрифтов; он пытается выглядеть как заметка, которую кто-то быстро набросал, но выглядит безвкусно и неактуально.

Несовершенства в Bradley Hand предназначены для того, чтобы сделать его более похожим на настоящий почерк, но эти несовершенства также могут быть трудными для правильной печати, оставляя неровные нечеткие края вокруг каждой буквы.

Impact

В Impact нет ничего изначально плохого — это хороший жирный шрифт, который можно легко печатать, тиснить или штамповать фольгой. Тем не менее, это также выбор по умолчанию каждый раз, когда дизайнеру-любителю нужен жирный шрифт.

Из-за этого Impact является официальным шрифтом, используемым в забавных картинках с кошками и интернет-мемах, что делает его одним из худших шрифтов всех времен, если вы пытаетесь выглядеть профессионально. Если вы не пытаетесь целенаправленно вызвать ощущение интернет-субкультуры в своем полиграфическом дизайне, избегайте Impact.

Trajan

Проблема типографики Trajan в том, что она очень часто используется в кинопостерах.

Поскольку Trajan является одним из шрифтов по умолчанию в Adobe Creative Suite, он является одним из наиболее часто используемых шрифтов в печатном маркетинге, особенно когда речь идет о кинопостерах. От «Титаника» до «Секса в большом городе» этот шрифт так много раз использовался в голливудских маркетинговых кампаниях, что его прозвали «киношрифтом».

Траян — шрифт из фильма


Посмотреть это видео на YouTube

Это может отрицательно сказаться на вашем печатном дизайне, поскольку отвлекает аудиторию, особенно когда они, наконец, выясняют, где раньше видели шрифт.

Courier

Это изображение из галереи знаковых логотипов, написанных в Courier, показывает, насколько мягкий шрифт можно сравнить с другими вариантами.

Courier — это всегда выбор по умолчанию, когда неопытным дизайнерам нужен шрифт, напоминающий набор текста, поэтому он слишком часто используется в любительском полиграфическом маркетинге и дизайне. Но даже если бы это было не так, шрифт с самого начала выглядит не так уж и интересно.

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

Автор записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *