Как установить шрифт для консоли windows
Знаете ли Вы, что в свойствах окна командной строки можно использовать не только 2 шрифта? Все, что нужно знать для этого — просто применить хак реестра, чтобы разрешить другие шрифты, включая весьма удобочитаемые, которые стали доступны с Windows Vista и Office 2007.
Вы можете разрешить несколько шрифтов с фиксированной шириной. Давайте рассмотрим, как это работает.
[Как поменять шрифт по умолчанию для консоли команд]
Чтобы поменять шрифт, сделайте правый клик на плашке заголовка окна и выберите Properties (Свойства) из контекстного меню. Если Вы хотите установить значение по умолчанию для всех окон командной строки, то можете вместо этого выбрать опцию Defaults (Умолчания).
Теперь на закладке Font (Шрифт) вы сможете выбрать любой из шрифтов, который разрешен (через настройку в реестре, см. далее) для использования в окне консоли командной строки.
На скриншоте можно увидеть, что в списке разрешенных имеется шрифт Consolas. Этот шрифт по умолчанию не разрешен, но теперь мы научимся, как можно его разрешить.
[Разрешение использования дополнительных шрифтов для окна командной строки]
Чтобы разрешить использование дополнительных шрифтов в командной строке, Вам нужно ввести в реестр изменение. Для этого откройте редактор реестра regedit.exe, и с помощью поиска, или навигацией по дереву найдите следующий ключ реестра:
Зайдите в просмотр этого ключа, и в правой части окна редактора Вы увидите список разрешенных шрифтов True Type. Чтобы добавить туда еще один, добавьте новое значение типа String (Строка) под именем 00, и установите его значение в имя шрифта, который Вы хотите разрешить.
! Обратите внимание, что может понадобиться перезагрузить Ваш компьютер после внесения изменений, чтобы стало доступным использование новых шрифтов в окне консоли.
Как Вы видите на скриншотах, здесь был разрешен шрифт Consolas. Этот шрифт имеется на Windows Vista или в составе Office 2007. Но если Вы используете Windows XP, то можете получить этот шрифт, если просто установите у себя бесплатный Powerpoint 2007 Viewer (он содержит этот шрифт).
Даже на маленьких размерах шрифта буквы Consolas остаются хорошо читаемыми.
[Какие шрифты можно использовать для консоли cmd.exe]
Командная строка может принять только лишь шрифты с фиксированной шириной, так что даже не пытайтесь разрешить шрифты наподобие Comic Sans. В консоли работают шрифты наподобие White Rabbit:
Чтобы разрешить дополнительный шрифт, сохранив при этом разрешенным Consolas, сначала Вам нужно загрузить и установить его (правый клик на файле шрифта, выбрать Установить), после чего нужно в регистре добавить новую запись, но убедиться при этом, что у неё будет другое имя. Если имя 00 уже имеется, то можно использовать имена наподобие 000, или 00, 01, 02, и т. д.
После того, как шрифты разрешены, можно выбрать для консоли любой из них на той же закладке Font свойств окна (помните, что возможно понадобится перезагрузка или перелогин, чтобы изменения вступили в силу).
Некоторые шрифты в консоли не работают. Например, иногда со шрифтами фиксированного размера операционная система выдавала ошибку при попытке открыть свойства окна консоли:
Если такое случилось с Вами, то не волнуйтесь, просто вернитесь в редактирование реестра и удалите ссылку на неработающий шрифт.
Добавить TrueType Unicode шрифт в консольное окно
Есть горячее желание без мук добавить TrueType Unicode шрифт в консольное окно и переключиться на него.
Автоматизированно, то есть.
Предположим, что шрифт уже в системе и его имя я передаю в скрипт в качестве аргумента
Пока у меня не получилось даже руками.
Скачал шрифт Everson Mono Unicode.
В реестре значение добавил
в свойствах окна он появился, но на него не переключается.
тогда
скачал с Майкрософта Consolas Font Pack for Microsoft Visual Studio 2005 or 2008 в виде setup.exe
установка завершается ошибкой без указания конкретной причины.
Windows XP eng SP3.
нервы у меня нежелезные, здоровье моё расшатано, а шрифт добавить надо.
п о м о ж и т е к т о ч е м м о ж е т.
Добавлено через 1 час 14 минут
Кстати, давно хотел сказать, ЧТО:
вот это сообщение
2 способ (смена кодовой страницы):
Сменить кодовую страницу консоли.
А именно, в начале пакетного файла написать:
Это поможет Вам только частично.
Что можно?
md «Моя папка»
Создаст папку «Моя папка» с нормальными символами.
не соответствует истине.
после chcp 1251
надо просто поменять шрифт на truetype и консоль волшебно превратится в обычное windows-окно
зачем в 21 веке держать DOS-кодировку по умолчанию непонятно ( внутри Windows все строковые сервисы поддерживают
UTF-16LE, а локалью русского виндуса по умолчанию является 1251; ну и нахер нужна 866, для совместимости с чем,
с редактором Лексикон? )
Шрифт не является шрифтом TrueType
Я вот пытаюсь применить к кнопке шрифт GOST Type A, но он пишет что этот шрифт не является шрифтом.
Добавить окно в консольное приложение
Здравствуйте. Имеется консольное приложение написанное на visual studio С++. Использует кучу.
Как Консольное-приложение в Lazarus сдружить c кодировкой Unicode или Unicode Big Endian или UTF-8
Нужно чтобы Lazarus отображал символы псевдографики желательно все, но в основном вот эти.
Перед каждым словом стоит шрифт Arial Unicode MS
Писал диплом. В определенный момент заметил что во внешнем виде написанного мною текста неуловимо.
Здесь: http://forum.farmanager.com/vi. &start=176
самый нижний пост на этой (12-й) странице пишут что «вроде помогает»:
а «Consolas Font Pack for Microsoft Visual Studio 2005 or 2008» при попытке установки на XP/sp2/ru/x32
показывает вот это окошко:
сам я, к сожалению, опыта общения с UNICODE в консоли не имею
я могу справиться с командой chcp 1251,
будет тяжело, трудно и отчаяние будет подтачивать силы,
но смогу.
речь шла не об этом.
Добавлено через 5 минут
buggydancer,
такого окошка мне не показывали,
но в любом случае ответа я на вопрос «как без мук автоматизированно установить шрифт в консоль» пока не получил.
Добавлено через 17 минут
Oh, yeh.
после перезагрузки Windows шрифт Everson Mono Unicode стал переключаться.
дело за малым — найти, как его автоматически / надёжно установить на любой версии Windows
Это только для старых DOS программ, запускаемых через ярлыки pif.
Преременная comspec это путь к командному процессору. Ничего к ней добавлять нельзя. Конечно, если очень хочется проблем, то добавить можно
http://en.wikipedia.org/wiki/COMSPEC
Не, не превратится. Только шрифт другой будет.
П.С.
Выполнить chcp 1251 автоматически можно через HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun или HKEY_CURRENT_USER\Software\Microsoft\Command Processor\Autorun
может таким батником (на xp/sp2/ru/x32 отработал из-под админа):
Видимо, из-за того что шрифт устанавливается «нечестным» методом (копированием), требуется перезагрузка.
И ещё, шрифт «0» для консоли обычно занят шрифтом «Lucida Console». Могут быть и другие (например у меня «00» это Consolas, а «000» это чуток изменённый шрифт с форума ФАРа).
В идеале надо сделать цикл с вызовом reg query для проверки того, что, во-первых, этот шрифт ещё не записан в реестр, во-вторых, найти последнюю последовательность нулей для нового шрифта.
как же тогда объяснить вот такое окошко при копировании мышкой шрифта в %windir%\fonts:
тоже облегчения (страданий) не принесли: первая «ушла в закат» с %errorlevel%=0,
вторая сказала: «не найден указанный модуль win32api.dll» на том же xp/sp2/ru/x32,
кроме того нарытая в интернете
также оказалась бесполезной, ибо при тупом копировании «этого вашего» «everson-mono-unicode.ttf»
указанная запись в реестре «рождается» автоматически.
В заключение (очень) хочется сказать, что, видимо, дело не в системных шрифтах, т.к. в настройках консоли
этот шрифт вполне себе показывается, а то что до перезагрузки на него нельзя переключиться,
так то проблема этой самой консоли (по всей видимости).
Соответственно и непонятно можно-ли «перегрузить» одну «console subsystem» без всего виндовса
При копировании другими средствами такого не наблюдается (например, командой copy). Видимо, это свойство обработчика (в реестре CLSID=BD84B380-8CA2-1069-AB1D-08000948F534) для папки font (как там они правильно называются?).
П.С.
Некоторое время назад пробовал устанавливать шрифт myfont с форума farmanager.com через gdi32 из autoit на XP. В одном случае всё получилось замечательно, в другом облом. Почему — не разобрался в связи отсутствием времени.
Дело не в мышке и не в кошке, дело в самом Explorer
и при «тупом» копировании ( например из cmd ) ничего в реестр не запишется,
чтобы что-то хорошее и доброе произошло, надо дёргать shell32 dll, к которой Explorer и привязан.
воспроизвести сей функционал vbs-скриптом можно так:
у .CopyHere вторым параметром опция, которая управляет появлением диалогокошка с прогресс-баром,
которое так взволновало buggydancer
vbs я не люблю, сделал тупым копированием в cmd ( который я тоже не люблю )
перезагружаться всё равно надо. Хоть Русиновичу письмо пиши, ей-богу.
да, кстати, тот вышеозначенный vbscript годится только для XP, для 7-ки уже по-другому по слухам.
Может я оскорблю чьи-то религиозные чувства, но Windows мне напоминает письмо из Простоквашино:
сначала дядя Фёдор что-написал, потом Шарик пришёл и давай cmd-консоль про хвост и лапы, потом Матроскин.
продолжая про Простоквашино:
В Mac OS X, например, все шрифты во всех окошках отображаются как положено в отличие от Windows.
Подсунув Windows-у Mac-овский truetype шрифт, результата ожидаемо не получил
( виндовс шрифт-вьювер символы показывает, но другие приложения рисуют пустые квадратики )
может у меня пиратская копия Виндовс, а?
скачал распоследнюю версию 10 с сайта Майкрософт. чтоб уж точно.
Смотрю на самый главный шрифт Courier New
Windows 10 preview
cour.ttf Courier New ver. 6.85 ( новее уже некуда) (c) Monotype Corp — 735 288 байт
Mac OS X Yosemite
Courier New.ttf ver. 5.02 684624 (c) Monotype Corp — 684 624 byte
Компания — поставщик шрифтов одна и та же.
размер, как видно, стал ещё толще.
Юникодовские таблицы указаны те же.
Только под Макосью показываются все символы во всех таблицах, а под Виндовс 30% не показывается
Компанию, продающей в год миллиард копий своей ОС, такое положение вещей вполне устраивает.
Вариантов два:
1) Наглые циничные удалено .
2) Запредельные удалено
есть ещё и третий — совокупность первых двух.
———
продолжаю про консоль и моноширные шрифты.
Относительно приличного результата добился на Windows-шрифте DejaVu Sans Mono
( собственно про результат — мне нужны были в консоли математические символы ),
Но все символы показываются только шрифтом Everson Mono, правда, сам он страшноват.
почему показываются все символы из левого Everson и не показываются из ‘родных’ шрифтов я не знаю.
Как установить шрифт для консоли windows
Или, может, возможно заменить только один шрифт из растровых, ведь, как я понимаю, растровые шрифты с разными размерами — это не один и тот же, а именно разные?
Добавлено:
Никто не знает?
Вот я что нашёл.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Console\TrueTypeFont
Здесь можно заменить люсиду на нужный шрифт. Но, к сожалению, нельзя добавить шрифт, чтобы можно было использовать и люсиду, и другой шрифт.
Кто-нибудь что-нибудь может посоветовать всё-таки?
Добавлено:
Ладно, всё нашёл.
Новые шрифты добавлять в этот список можно, просто значения ключа надо нумеровать не 0, 1, 2 и т.д., а 0, 00, 000.
|
|
|