Настраиваем субпиксельное сглаживание шрифтов в Mac OS X.

Помню свое первое знакомство с Mac OS X… Я влюбился в эту «операционку» как мальчишка, с первого взгляда… До сих пор я думаю: «Что же меня подкупило в этой незнакомой и тогда ещё чуждой операционной системе?» – Но так до сих пор сам себе и не смог дать однозначного ответа… Наверное всё! Меня подкупило всё: удобство, продуманность, красивый интерфейс и его анимации, значки, каждый из которых – шедевр, и конечно же шрифты…

Стив Джобс был неравнодушным к искусству и красивым шрифтам, и это легло в основы Apple и Mac OS, в частности. Из-за своей уникальности и продуманности компьютеры Apple всегда ценились и славились среди творческих людей. Поэтому Mac очень быстро стал доминирующей платформой среди музыкантов, фотографов, художников, архитекторов, дизайнеров и писателей. В чём же секрет? Неужто только в этом? – Кроме продуманого интерфейса, красивых иконок и анимации, в Mac OS X была внедрена собственная уникальная система сглаживания шрифтов, которая обеспечивает их красивую и плавную отрисовку. В Apple сделали так, чтоб в любом случае шрифт на экране выглядел близко тому, как его задумывал дизайнер, даже если это повлечет за собой некоторую «мыльность» при его отрисовке. Плюс данного алгоритма субпиксельного сглаживания заключается в том, что при «верстке» текст на экране будет достаточно близким к тому, что в итоге получится при печати. И это подкупило полиграфистов. Действительно, впервые сев за Mac сразу ловишь себя на мысли: «Чёрт! Какие здесь ахренительные шрифты!» Возвращаясь обратно к Windows, понимаешь, что у Microsoft со шрифтами что-то не так.

Степени субпиксельного сглаживания шрифтов в Mac OS X.

К сожалению, процесс «рендеринга» шрифтов в Mac OS X не всегда отрабатывает правильно. Это зависит от «фантомных глюков» (когда самопроизвольно выставляется неправильный коэффициент сглаживания – font smoothing issue) и, как это ни странно, от монитора. На одних дисплеях незначительное субпиксельное сглаживание смотрится великолепно, на других – слишком «мыто» и «жирно», а на третьих его вообще не видно. Вся эта неразбериха началась из-за великого разнообразия технологий производства LCD-панелей: TN, IPS, MVA, PVA… В Apple с этим разобрались достаточно просто: «фирменное» субпиксельное сглаживание практически всегда по-умолчанию включено на компьютерах iMac, MacBook Pro и дисплеях Apple Cinema – то есть там, где используются достаточно качественные матрицы; на MacBook и дисплеях сторонних производителей – там, где матрица посредственная или вообще неизвестно какая, по-умолчанию включено самое обычное сглаживание (то, что можно увидеть слева на предыдущем скриншоте). Из-за этого получается некая неоднозначность: «А что же со сглаживанием шрифтов происходит у меня, на моём Mac?» Если вы не гик и вас всё устраивает в плане отображения шрифтов – то оставляйте всё как есть; если же у вас проблемы с отображением шрифтов, или вы просто хотите поэксперементировать в поисках лучшего варианта, – оставайтесь со мной до конца 😉

Перед тем как мы займёмся «магией», давайте определимся с тем, какое сглаживанием шрифтов может быть вообще. В Mac OS X имеется четыре уровня сглаживания, которые задаются следующими коэффициентами:

Степени субпиксельного сглаживания шрифтов в Mac OS X.

  • 0 – субпиксельное сглаживание отключено;
  • 1 – слабое сглаживание;
  • 2 – среднее сглаживание;
  • 3 – сильное сглаживание.

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

Для выбора более оптимального субпиксельного сглаживания его нужно как-то оценить. Сделать это с ходу не так просто, потому как «минимальное» и «максимальное» сглаживание можно достаточно просто «продетектить» навскидку, а вот со сглаживанием в диапазоне от до 2 не всё так просто. Я для себя выработал достаточно простой метод: задаём сглаживание с коэффициентом 0 и делаем скриншот окна с текстом; задаём сглаживание с коэффициентом 1 и снова делаем скриншот окна с текстом…ну и так далее. Потом сделанные скриншоты быстро просматриваем при помощи QuickLook и отбираем самый понравившийся результат.

Давайте приступим к эксперименту. Запустите стандартный текстовый редактор TextEdit, вставте в него какой-либо текст и сохраните полученный документ в удобном и главное быстродоступном месте. Теперь сделайте скриншот окна с текстом и назовите его Default. Этот скриншот мы будем использовать как эталон. Теперь полностью завершите работу TextEdit через сочетание клавиш Cmd ⌘ + Q. Это нужно делать каждый раз перед внесением изменений в настройки, иначе вы не увидите разницу в отрисовке шрифтов. Команда, которая принудительно задаёт коэффициент субпиксельного сглаживания, выглядит следующим образом:

defaults -currentHost write -globalDomain AppleFontSmoothing -integer X

Вместо X указывается коэффициент сглаживания от 0 до 3. Данная команда выполняется в Терминале от лица текущего пользователя (то есть не требует авторизации в качестве root’а и, соответственно, ввода пароля суперпользователя). Выполните команду с коэфициентом субпиксельного сглаживания равным 0; откройте в TextEdit ранее сохранёный документ; сделайте скриншот окна и снова полностью завершите работу TextEdit. Переименуйте созданный скриншот так, чтоб сразу было понятно при каком коэффициенте сглаживания он был сделан. Проделайте аналогичные действия для остальных коэффициентов сглаживания. Всего у вас должно получиться 5 скриншотов: Default, X=0, X=1, X=2 и X=3. Теперь соберите все скриншоты и просмотрите их при помощи QuickLook:
 
Степени субпиксельного сглаживания шрифтов в Mac OS X.

Степени субпиксельного сглаживания шрифтов в Mac OS X.

Степени субпиксельного сглаживания шрифтов в Mac OS X.

Степени субпиксельного сглаживания шрифтов в Mac OS X.

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

defaults -currentHost write -globalDomain AppleFontSmoothing -integer 2

После выполнения данной команды можно выполнить перезагрузку дабы все программы начали использовать новое сглаживание для шрифтов. Вот и всё!

Что делать, если вы запутались с этими всеми командами, коэффициентами сглаживания и настройками, и накуралесили вообще неизвестно что? – Ну это самый простой вопрос 🙂 Выполните в Терминале вот такую команду:

defaults -currentHost delete -globalDomain AppleFontSmoothing; defaults delete -globalDomain AppleFontSmoothing;

После перезагрузки компьютера вся система будет использовать «заводские» установки для сглаживания шрифтов.

P.S.: Кстати, этим же способом решается проблема чересчур «толстого» и «размытого» шрифта, фигурирующая в англоязычном интернете под именем «font smoothing issue». Заключается проблема в следующем: после очередного обновления системы у многих «вылез» очень неприятный глюк – текст в браузерах и текстовых редакторах стал выглядеть настолько «толстым» и «мытым», что его стало очень трудно читать. Вот как раз при помощи вышеприведенного способа можно достаточно легко и быстро подчинить отображение шрифтов в Mac OS X.

Share this article
0
Share
Prev Post

Как переименовать группу файлов в Mac OS X при помощи службы, созданной в Automator.

Next Post

Skype запускает бесплатный сервис Video Messaging для всех.

Comments 16
  1. И, насколько я понимаю, субпиксельное сглаживание на маке не приемлет иного от RGB расположения пикселей.
    Так, при использовании ТВ в качестве монитора, наблюдаем “пушистые” с цветными ореолами шрифты. Большинство телевизионных матриц имеют структуру пикселя BGR.
    При том, что и вин и линь позволяют выбрать тип пикселя.

    П.С. Во избежание холиваров – это ещё раз доказывает политику фирмы, что техника эппл не конструктор )
    …вот бы добавили 😉

    1. Да, в Mac OS X субпиксельное сглаживание работает с расчётом только на RGB. Я уверен, в Apple даже и не думали, что кто-то будет использовать телевизор в качестве замены монитору, и при этом сетовать на шрифты с цветными ореолами 😉 А для просмотра фильмов и другого контента у Apple есть технология AirPlay и AirDisplay, которые как раз без проблем смогут вывести «картинку» на большой телик. Mac OS X – это не конструктор, в отличие от Linux. И если бы в Mac OS X напихали столько настроек, сколько их напихали в Linux, то Mac OS X уже не была бы той простой, лаконичной и интуитивно понятной ОС. Философия Apple совсем в другом – в простоте. Хотя, стоит признаться, задумываешься над тем, что неплохо было бы сделать в Mac OS X расширенный режим настроек для продвинутых пользователей 🙂

      P.S.: Моё время «холиваров» уже давно прошло, так что я к этому отношусь спокойно: есть то, что хорошо мне, а есть то, что хорошо кому-то. И это нормально. Кстати, в 2004-2005 году я вёл «священные войны» как раз с «яблочниками», защищая «винду»…пока сам не познакомился с Mac 😀

      1. Я, как хакинтошник, смело заверяю, что OS X это тот ещё конструктор. Только детальки склеены воедино, и очень сложно такой конструктор разбирать, дабы внести правки 🙂

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

    Ваш блог мне как раз интересен описанием твиков и неявных возможностей техники Эппл.

    Далее мнение моё личное, на истину не претендующее:
    Мак ОС хороша на больших разрешениях и на родных экранах, ибо на них и ориентирована. На 27″ iMac интерфейс великолепен и нареканий не вызывает.
    Но вот на разрешениях ниже WXGA Вин выигрывает в информативности на полезную площадь экрана.
    В штатном файловом менеджере – Проводнике, до сих пор предпочитаю использовать растровые шрифты (MS Sans Seriff 8).
    Настраиваемый Линукс, так же позволяет выбирать шрифты интерфейса, их размер и тип сглаживания. На нетбуке, где у меня XFCE с темой оформления близкой к купертиновской, Мак ОС выглядела бы расточительно массивной.

    По поводу отсутствующего в Мак ОС типа сглаживания тихо сожалею.
    К телевизору подключаю Мак Мини, думаю ему не помешало бы )))

    П.С. Интересно, а у LCD проекторов какой тип строения пикселя?

    1. У каждой платформы есть свои «плюсы» и «минусы», и каждый для себя «выбирает из двух зол меньшее» 🙂
      На счёт проекторов не подскажу, не связывался 😉

  3. Субпиксельное сглаживание на дисплеях, на которых видна сетка – чушь. Нужны хорошие экранные шрифты. А глаз сгладит лучше всех. Перечисленные “творческие” люди читают с дисплее тест чуть более чем никогда.

  4. Огромное спасибо за статью! Я уже подумывал и нафига я вылаживал такие деньги за Macbook и Thunderbolt Display 27 !!! Так расстроился когда увидел размытые шрифты. Воспользовался вашей настройкой и – о чудо! я снова люблю Apple. Еще раз СПАСИБО!!!

    1. Может у Вас еще есть какие советы для того что бы сдружить эту парочку (Macbook 15 Retina и Thunderbolt Display 27)

  5. Будье добры подскажите где находится терминал, куда необходимо внести команду?

    1. Папка «Программы» → «Утилиты» → программа «Терминал»; в английской локализации «Applications» → «Utilities» → «Terminal». Да, и будьте с ним аккуратнее. Терминал – это очень мощная штука.

  6. Помогло, шрифты стали хоть немного похожи на виндовые. А то на ретине выглядит превосходно, а внешний монитор – ужасная ахинея. Сейчас стало получше, спасибо)

    1. Тоже долго не мог привыкнуть к сглаживанию шрифтов в Mac OS X. Но потом влюбился в них и «виндовые» кажутся какими-то не такими 😀
      Не за что 😉

  7. Перепробовал кучу вариантов борьбы с размытыми шрифтами – сбор через терминал не работает:
    evgpol$ defaults -currentHost delete -globalDomain AppleFontSmoothing; defaults delete -globalDomain AppleFontSmoothing;
    2016-04-09 14:05:18.473 defaults[469:7088]
    Domain (kCFPreferencesAnyApplication) not found.
    Defaults have not been changed.
    2016-04-09 14:05:18.483 defaults[470:7092]
    Domain (kCFPreferencesAnyApplication) not found.
    Defaults have not been changed.

    Скажите что еще возможно сделать?

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

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

Read next