Отключите сглаживание для некоторых шрифтов в Windows 8

Как отключить сглаживание только для некоторых имен шрифтов в Windows 8? В частности, мне нравится использовать Terminus, который является отличным кодирующим шрифтом, но выглядит как мусор при рендеринге с ClearType и сглаживанием.

2 ответа

Решение

Я не думаю, что это можно сделать шрифтом напрямую из ОС, и поэтому мой ответ - не прямой, а ответ, если ничего не получится!

Вы можете сделать это общесистемным изменением, которое не делает это программно (но выключает или включает его), а затем посмотрите эту статью (код приведен ниже)

Чтобы вообще отключить сглаживание:

[HKEY_CURRENT_USER \ Панель управления \ Рабочий стол]

"FontSmoothing" = "0"
"FontSmoothingType" = DWORD:00000000

Это действительно может быть сделано, но не с Windows. Вам нужно будет использовать другую платформу рендеринга шрифтов, например FreeType (используется Linux). Самый простой способ получить FreeType в Windows - использовать программу MacType. Это позволит вам использовать разные настройки рендеринга для разных шрифтов.

К сожалению, FreeType не аппаратно ускоряется, в отличие от DirectWrite. И это не самая удобная из программ, просто самая удобная из программ рендеринга FreeType. Если вас это не интересует, вы можете посмотреть в обзоре Code Project монокосмических шрифтов альтернативы Terminus.

Другие вопросы по тегам