Сравнение качества текста в интернет-браузерах

для раздела Блоги
Тут на днях вышла новая версия Chrome, в которой текст стал выводиться с помощью DirectWrite (на венде есесно). Многие наверное уже успели заметить и оценить это очаровательное мыло. Надо сказать, что Chrome был последним из могикан, который рисовал текст силами GDI; IE и Firefox отказались от этого способа более трех лет назад. Ну а раз теперь все играют по одним правилам, интересно сравнить, кому удалось приручить DirectWrite лучше других.

В качестве теста я буду использовать вот эту страницу. Основной текст набран шрифтом Verdana (размер 13 пикселей или 10 пунктов), а заголовок и содержимое правой колонки — шрифтом Tahoma. Это стандартные системные шрифты. Verdana очень широко распространен в интернете. Нажмите в браузере F11 что бы упростить сравнение снимков.

Сравнение на стандартном DPI 100% (96 пикселов на дюйм):
Chrome 36 (GDI)Chrome 37 (DirectWrite)IE 11Firefox 31
Лучшее качество текста здесь у Firefox, он выглядит именно так, как я задал в настройках ClearType венды (для меня это важно). В Chrome 36 текст хоть и сравним по качеству, но почему-то менее насыщенный. Новый Chrome 37 сильно мылит, а у IE в добавок кое-где заметны цветные разводы вокруг букв (артефакты сглаживания ClearType).

Почему так происходит? В теории DirectWrite более крут, потому что может обеспечить правильные размер и начертание букв, а так же более качественное сглаживание. Но есть мааааленький нюанс. Для того что бы все эти плюшки хорошо работали, шрифт должен быть достаточно большого размера. Под размером я имею ввиду количество пикселей, из которых состоят буквы. Однако на снимках выше это не так. Например, буква «о» занимает всего 7х7 пикселей. В таких условиях невозможно накормить волков и сохранить овец. Приходится выбирать: либо мы имеем правильные размер и начертания букв (крутые дизайнеры пищат от восторга), либо хорошую разборчивость (а здесь уже аплодируют обычные пользователи).

В Firefox этот момент учли (не сразу, а после того как пользователи вылили на них тонны говна), там шрифт размером менее 16 пикселей рисуется по алгоритму GDI, который обеспечивает лучшую разборчивость. В IE до сих пор стригут все шрифты под одну гребенку. Индусов можно понять, домохозяйки и так схавают. Разработчики Chrome решили скопировать подход индусов.

Выше я рассмотрел ситуацию у владельцев крупных мониторов. Теперь посмотрим, все ли так плохо на бюджетных (таких как Full HD 22") и ноутбучных мониторах. Их владельцам приходится крутить вендовый DPI, увеличивая размер шрифта. И так, сравнение на DPI 125% (120 пикселов на дюйм):
Chrome 36 (GDI)Chrome 37 (DirectWrite)
Размер буквы «о» увеличился до 10х9 пикселов и DirectWrite заметно похорошел — осталось немножко мыла в правой колонке, но в целом разборчивость текста на хорошем уровне. В то же время у GDI появились косяки в виде наезжающих друг на друга букв.

И последнее сравнение на DPI 150% (144 пикселов на дюйм). Актуально для планшетов и смартфонов, реже ноутбуков. Вы уже догадываетесь какой будет результат…
Chrome 36 (GDI)Chrome 37 (DirectWrite)
Здесь преимущество DirectWrite еще более заметно, использовать GDI нет никакого смысла.

Мне вот интересно, почему разработчики Chrome решили кинуть владельцев крупных мониторов…

ЭНЕРГОПОТРЕБЛЕНИЕ

Странный заголовок, да? Фишка в том, что DirectWrite может переложить часть рисования текста на GPU (если позволяют дрова и железо) для ускорения работы «печатных машинок». В качестве побочного эффекта это может привести к изменению энергопотребления компьютера, как в большую, так и в меньшую сторону. К сожалению, у меня нет под рукой ноутбука, поэтому проверить не могу. Можете проверить сами, тема дохлых аккумуляторов актуальна.

НАСТРОЙКА БРАУЗЕРОВ

Отключить DirectWrite в Chrome можно так.

В Firefox шрифты, которые при необходимости рисуются силами GDI, перечислены в настройке gfx.font_rendering.cleartype_params.force_gdi_classic_for_families. Вы можете добавить туда свой любимый шрифт. А что бы рисовать любые шрифты (кроме загруженных из интернет, увы) силами GDI, не зависимо от их размера, измените настройку gfx.font_rendering.cleartype_params.rendering_mode на 2. Все эти изменения нужно делать по адресу about:config или в файле user.js. Более подробно о работе со шрифтами можно прочесть здесь (на английском).
Telegram-канал @overclockers_news - это удобный способ следить за новыми материалами на сайте. С картинками, расширенными описаниями и без рекламы.
Оценитe материал
рейтинг: 1.0 из 5
голосов: 1

Возможно вас заинтересует

Популярные новости

Сейчас обсуждают