Что я хочу сделать, это временно переключить один конкретный шрифт на другой, а затем переключить его обратно. Это позволит мне увидеть нужный шрифт в любых играх или программах. Мне интересно, существует ли такая вещь, или это возможно программно.
3 ответа
Если вы хотите иметь возможность настроить все системные шрифты (в том числе в приложениях, таких как игры) на один конкретный шрифт или семейство шрифтов, то, к сожалению, ответ - нет, это невозможно.
Каждая программа, от программ просмотра документов до браузеров и игр, имеет свои собственные настройки шрифтов, и даже те, которые позволяют настраивать их, имеют ограничения на типы (форматы файлов) шрифтов, которые можно использовать. Не говоря уже о том, что такие программы обычно используют внутренние настройки для установки шрифтов по умолчанию.
Многие другие приложения полагаются на встроенные шрифты, которые находятся в проприетарных форматах, и много раз (особенно в играх), когда вы смотрите на меню или что-то с текстом, вы на самом деле смотрите на визуализированное изображение текста ( так что эффекты могут быть отображены поверх текста, например, сложные выделения или эффекты перехода). Таким образом, невозможно изменить эти шрифты без замены самих изображений.
Извините, это не более удовлетворительный ответ.
Это возможно.
Во-первых, это можно сделать глобально, установив заменители шрифта в реестре Windows. Вот документ Microsoft. В основном вы идете в HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes
и добавляете строковую запись. Ключ - оригинальный шрифт, а значение - имя шрифта, на который вы хотите изменить. После перезапуска все заработает. Я проверял это под Vista.
Во-вторых, существует также более простое неглобальное решение под названием GDI++, которое позволяет записывать эти настройки в его конфигурационный файл gdi++.ini
например:
[FontSubstitutes]
Courier New=Arial
После этого вы перетаскиваете исполняемый файл программы на этот gdi++.exe
и он будет работать как замененный. Иногда это не работает, возможно, потому что целевая программа использует свои собственные методы рендеринга.
Тогда я рекомендую использовать MacType. Он получен из GDI++ ниже. Это немного сложно, но предоставляет хороший интерфейс для переключения / настройки профилей. В конфиге профиля есть переключение шрифтов. Включите настройку и установите заменители, и это может работать на программах должным образом.
Я не верю, что можно переключать шрифты таким образом.
Файл шрифта содержит много мета-информации, которая используется Windows/Linux для поиска шрифта, который лучше всего соответствует шрифту, запрашиваемому программой.
Нет способа передать эту метаинформацию из одного шрифта в другой. Нужно было бы объединить два файла шрифтов в новый шрифт: метаинформацию из одного и глифы из другого, с поправками на размеры символов, кернинг и другую информацию. Другими словами: создайте ложный шрифт, который отвечает тем же характеристикам, что и настоящий, но использует другие глифы, затем переименуйте реальный шрифт и замените его новым.
Затрачиваемые усилия сравнимы с усилиями по самостоятельному созданию нового шрифта, что является большой работой. См. « Создание собственного шрифта».