Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Microsoft Windows 2000/XP (http://forum.oszone.net/forumdisplay.php?f=6)
-   -   [решено] Сбилась кодировка командной строки (http://forum.oszone.net/showthread.php?t=133647)

D_Master 03-03-2009 07:58 1053453

[решено] Сбилась кодировка командной строки
 
Всем привет!

Не знаю точно что случилось, но стандартные сообщения командной строки отображаются в другой кодировке. То же самое происходит, если открыть командную строку в текущей папке, а в пути присутствуют русские символы:



В апплете "Языки и региональные стандарты" везде стоит русский язык.

Заранее спасибо.

eco 03-03-2009 11:16 1053593

В реестре какие кодировки стоят?

Petya V4sechkin 04-03-2009 10:12 1054544

Вложений: 1
D_Master, у себя то же самое недавно заметил - после чего произошло, не знаю. Вчера и сегодня роюсь в гугле - жутко интересно, почему так )

При запуске из Cmd.exe команда Chcp выдает 1251 (а должна 866 по умолчанию). При этом FAR manager выдает нормальную 866. А Command.com (досовский) - вообще прикол (скриншот прикрепил).

В ветке HKLM\SYSTEM\CurrentControlSet\Control\Nls\CodePage параметр OEMCP=866 (как и должно быть).

В этих ветках тоже все ок:
HKCU\SOFTWARE\Microsoft\Command Processor
HKLM\SOFTWARE\Microsoft\Command Processor

В досовских Autoexec.nt и Config.nt тоже нормально. Тем не менее, на скриншоте видно, что Chcp каким-то образом выполняется при запуске. Буду дальше рыть в этом направлении. Нет, Chcp ни при чем (удаление из system32 не помогло).

sfc /scannow пока не пробовал.

Petya V4sechkin 04-03-2009 11:02 1054577

D_Master, эврика!
В ветке HKEY_CURRENT_USER\Console параметр CodePage все портит. Его можно просто удалить (по умолчанию будет 866). И в HKEY_USERS\S-1-5-18\Console заодно.

А делает этот "замечательный" глюк ComboFix.

D_Master 04-03-2009 11:27 1054593

Сорри, что не заглядывал в тему :)
Petya V4sechkin, благодарю, попробую! (сейчас 7ку оцениваю :))

Цитата:

Цитата Petya V4sechkin
А делает этот "замечательный" глюк ComboFix, там есть такое: »

Точно! Я же на днях с ComboFix-ом работал!

Pili 04-03-2009 11:53 1054615

Попробуйте переустановить шрифты windows
Дополнительно здесь
update
Проверил на тестовом компьютере (спец. собрал), версия комбофикс правда устарела, ещё прошлогодняя. Действительно cmd после комбофикс показывет иероглифы :)
В ветке HKEY_CURRENT_USER\Console параметра CodePage вообще нет, добавление туда и в HKEY_USERS\S-1-5-18 CodePage=866 не помогло. Зато есть HKEY_CURRENT_USER\Console\%systemroot%_system32_cmd.exe, где CodePage=1251
Прописал так
Код:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Console\%systemroot%_system32_cmd.exe]
"CodePage"=dword:00000362

И все стало нормально :)
Заодно можно поискать по ключ. слову %systemroot%_system32_cmd.exe в ветке HKEY_USERS и также прописать CodePage=866

okshef 09-05-2009 14:08 1114341

Эпидемия какая-то. На одном компьютере 3 системы - Vista, XP, 7. На Vista и XP в ком строке, после чего не знаю, слетела кодировка. На Vista помог только совет Pili. Остальное не сработало

lynxxx 12-05-2009 13:36 1116258

Цитата:

В ветке HKEY_CURRENT_USER\Console параметр CodePage все портит. Его можно просто удалить (по умолчанию будет 866). И в HKEY_USERS\S-1-5-18\Console заодно.
удаление не помогло, переустановку шрифтов не получится сделать, диск не найден, папка Fonts весит 114мб
П.С.: А восстанавливать надо параметр CodePage в реестре? На что его удаление повлияет?

Petya V4sechkin 12-05-2009 13:38 1116263

lynxxx, Пуск -> Выполнить -> cmd.exe
Код:

chcp
что выдает?

lynxxx 12-05-2009 13:40 1116265

Цитата:

В ветке HKEY_CURRENT_USER\Console параметра CodePage вообще нет, добавление туда и в HKEY_USERS\S-1-5-18 CodePage=866 не помогло. Зато есть HKEY_CURRENT_USER\Console\%systemroot%_system32_cmd.exe, где CodePage=1251
Прописал так

Код:
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Console\%systemroot%_system32_cmd.exe]
"CodePage"=dword:00000362
код скопировать в блокнот и расширение .reg поставить и выполнить?

Цитата:

Цитата Petya V4sechkin
что выдает? »

текущая кодовая страница: 866
при выполнении chkdsk C: /r СКРИН

sztksales 23-12-2009 15:26 1302532

Pili,

В ветке HKEY_CURRENT_USER\Console параметра CodePage у меня CodePage=1251
Зато есть HKEY_CURRENT_USER\Console\%systemroot%_system32_cmd.exe,но у меня CodePage=1251-нет (но могу прописать если надо)

А как ты прописал и как вставил расскажи пошагово мне свою работу:
HTML код:

Прописал так

Код:
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Console\%systemroot%_system32_cmd.exe]
"CodePage"=dword:00000362


Petya V4sechkin 23-12-2009 15:28 1302536

Цитата:

Цитата sztksales
В ветке HKEY_CURRENT_USER\Console параметра CodePage у меня CodePage=1251

Удалите параметр.

sztksales 23-12-2009 15:30 1302537

Petya V4sechkin,
Спасибо за твою сностку, где уважаемый Pili, очень грамотно там все написал как надо исправить шрифты.

Но руководствуясь его правилами и текстом прочтения я так немного и непонял - может ты мне поможешь?????

В ветке HKEY_CURRENT_USER\Console параметра CodePage у меня CodePage=1251
Зато есть HKEY_CURRENT_USER\Console\%systemroot%_system32_cmd.exe,но у меня CodePage=1251-нет (но могу прописать если надо)

А как прописать и куда вставить расскажи мне пошагово:
HTML код:

Прописал так

Код:
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Console\%systemroot%_system32_cmd.exe]
"CodePage"=dword:00000362


Petya V4sechkin 23-12-2009 15:34 1302542

sztksales, повторяю для особо одаренных: удалите параметр CodePage.

sztksales 23-12-2009 15:36 1302543

Petya V4sechkin,

Ни чего не стал удалять, а наоборот:

В ветке HKEY_CURRENT_USER\Console параметр CodePage поменял на 866 и в HKEY_USERS\S-1-5-18\Console CodePage 866 заодно.

Прописал в ветке [HKEY_CURRENT_USER\Console\%systemroot%_system32_cmd.exe]
в REG_DWORD - "CodePage" на 866

Дал заново команду CMD, команда chcp - показывает 866 !!!!! Все встало на свои места - иероглифы исчезли!!!!!!! :laiel:
Ура!!!!! Спасибо огромное..... :4u:
Вам за такую умную работу - Вам надо давать печеньки с молоком.... :boast:

Petya V4sechkin 23-12-2009 15:55 1302564

Цитата:

Цитата sztksales
Удалил и что???

Не помогло?

sztksales 23-12-2009 15:56 1302566

Все восстановил, как положено и все встало на свои места!!!!
Спасибо помогло!!!!! :)

Nimbussr 10-05-2010 07:51 1410201

Тоже столкнулся с неправильной кодировкой в cmd в WinXP SP3.
В моём случае данная проблема решалась принудительным заданием кодировки 866 в HKEY_CURRENT_USER\Console (перезагрузка не требуется).
1. Создание подраздела %systemroot%_system32_cmd.exe и параметра СodePage:
Код:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Console\%systemroot%_system32_cmd.exe]
"CodePage"=dword:00000362

или
2. Создание параметра CodePage:
Код:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Console]
"CodePage"=dword:00000362

Достаточно применить только один вариант.
Внесение изменений в HKEY_USERS\S-1-5-18\Console не давало никаких изменений.

PATRI0T 16-06-2010 14:34 1435267

Тоже пользовался Combofix, аналогичные проблемы. Все поправил, спасибо большое, только вроде бы он добавляет еще один глюк. Перестали действовать специальные символы - ^C, ^Z - не получается прервать команду пинг.
А если сделаете ping ya.ru -t - то вообще, только закрывать cmd. Никто не знает, как это лечить?

w95w7 30-01-2011 07:36 1600218

не нашел более подходящей темы для моей проблемы

использую команду
dir > t.txt
в ВАТ-файле, чтобы получить список папок и файлов в той же папке, откуда и запускаю этот ВАТ-файл

в XPsp3 кириллица в проводнике видна,
а в результирующем файле t.txt , полученном выше, вместо нее всегда кракозябры

методы, описанные здесь выше, мне не помогли

при этом, при открытии любого примитивного ТХТ-файла, не имеющего указания о его кодировке, он открывается в кодировке 1251, как мне и удобно

попытка открыть t.txt принудительно в кодировке 866, используя notepad\wordpad - безуспешна

что еще можно попоробовать сделать?

Petya V4sechkin 30-01-2011 07:58 1600221

Цитата:

Цитата w95w7
попытка открыть t.txt принудительно в кодировке 866, используя notepad\wordpad - безуспешна

Варианты:
  1. воспользоваться редакторами с поддержкой DOS-866 (типа AkelPad, Bred 2, TigerPad и т. д.);
  2. добавить в батник команду chcp 1251
    Код:

    chcp 1251
    dir > t.txt

    тогда файл получится в кодировке Win-1251, и вы сможете открыть его обычным блокнотом.

w95w7 30-01-2011 08:06 1600223

сработало, спа-си-бо!

Owyn 07-01-2012 21:33 1830462

как изменить дефолтный chcp консоли?
 
как изменить дефолтный chcp консоли?

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage - параметр OEMCP стоит 866

Ветки HKCU\Console\%%SystemRoot%%_system32_cmd.exe не существует

Petya V4sechkin 07-01-2012 21:53 1830485

Owyn, удалите параметр CodePage в ветке HKEY_CURRENT_USER\Console

Owyn 07-01-2012 22:03 1830492

Petya V4sechkin, параметра CodePage в ветке HKEY_CURRENT_USER\Console не существует.

Petya V4sechkin 07-01-2012 22:15 1830501

Owyn, где-то он существует.

Owyn 07-01-2012 22:29 1830519

Petya V4sechkin, в
HKEY_USERS\.DEFAULT\Console CodePage стоит 1251 но его смена ничего не дает
HKEY_USERS\S-1-5-18\Console еще есть CodePage но он стоит в 866

Больше нигде в реестре нету параметра CodePage

Цитата:

Цитата Petya V4sechkin
удалите параметр CodePage в ветке HKEY_CURRENT_USER\Console »

Ок, создал параметр CodePage со значением 866 в ветке HKEY_CURRENT_USER\Console, помогло :)

Rusis80 07-04-2012 23:39 1895389

Ни один из вариантов не отработал.
Помогла смена типа шрифта с "точечные" на любой другой из возможных двух.
Искать здесь: Запустить CMD -> ПКМ по рамке окна -> Свойства -> Шрифт.
OS Windows 7. На WinXP думаю так-же.

Fsaber 10-04-2012 18:22 1897133

значит хитро убиты *.fon. однако.

Iska 10-04-2012 19:59 1897206

Цитата:

Цитата Rusis80
…из возможных двух. »

Это не предел: Necessary criteria for fonts to be available in a command window.

Fsaber 10-04-2012 21:14 1897252

Цитата:

Цитата Iska
Это не предел: Necessary criteria for fonts to be available in a command window. »

Кстати, не поделитесь какими-либо кроме:

Andale Mono
Bitstream Vera Mono
Consolas
Courier New
DejaVu Sans Mono

Хочется расширить наборчик в коллекции :)

Iska 11-04-2012 00:06 1897350

Я не сильно большой любитель коллекционировать, свои потребности я покрыл, в основном, за счёт «Consolas» и «PT Mono». В ряде случаев из-за особенностей связки «видеокарта-драйвер-физическое разрешение монитора-установленное логическое разрешение экрана» использовал также шрифты «Andale Mono» и «DejaVu Sans Mono». Так что, я Вам в этом, увы, не помощник.

В принципе, можете порыться в этой теме: Шрифты для Far; там куча ссылок и описаний разнообразных шрифтов, причём не только контурных, но и вполне качественных растровых шрифтов.

Amigos 11-04-2012 09:09 1897445

Цитата:

Цитата Fsaber
Кстати, не поделитесь какими-либо кроме:
Andale Mono
Bitstream Vera Mono
Consolas
Courier New
DejaVu Sans Mono »

TrueType
тут всё просто
моноширинных шрифтов с русскими глифами и прописанной кодировкой Cp866 немного :
  1. дефолтный в Win9X Courier New
  2. Andale Mono (идёт в составе Ms Office)
  3. Anonymous Pro (свободный шрифт)
  4. Consolas (идёт в составе Ms Office)
  5. Lucida Console дефолтный в Win2k и выше
  6. PT Mono(свободный шрифт, сделанный и распространяемый Паратайпом )
чтобы получить это всё у себя, нужно установить вышеназванные шрифты и добавить твик
Код:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Console\TrueTypeFont]
"0"="Lucida Console"
"00"="Anonymous Pro"
"000"="Courier New"
"0000"="Andale Mono"
"00000"="Consolas"
"000000"="PT Mono"


Fsaber 11-04-2012 09:58 1897470

Цитата:

Цитата Amigos
TrueType
тут всё просто »

Спасибо за паратайп и анонимус.
CP866 меня слабо интересует :) ибо лечится chcp если сильно надо.
Меня скорее интересует их Юникодно-наполненность.

1swindler1 01-01-2013 23:58 2057247

Всем привет! У меня проблема та же.
В реестре в ветке HKLM\SYSTEM\CurrentControlSet\Control\Nls\CodePage параметр OEMCP=437 (а должно быть 866),
Что это может значить

Artell 22-07-2013 06:18 2188414

У меня XP rus в консоли русские буквы нормально при вводе и вверху окна:
Цитата:

Microsoft Windows XP [Версия 5.1.2600]
(С) Корпорация Майкрософт, 1985-2001.
а вот ниже, вывод данных из программ кракозябрами часто идет
Цитата:

2013-07-21 08:30 ¦шЄрщёъюх тЁхь* (чшьр)
Декодер кракозябр выдает что это
Цитата:

2013-07-21 08:30 ¦итайское врем* (зима)
Как нам пришлось помучиться
CP866 → CP1251
Шрифты менял, их там всего два почему-то.
HKEY_CURRENT_USER\Console параметр CodePage параметр отсутствует.
команда chcp выдает 866
Получается тут как в браузере если есть текст в разных кодировках на одной странице, не все браузеры нормально переваривают. Как это поправить?

Iska 22-07-2013 07:30 2188435

Artell, некоторые утилиты сделаны так, что делают вывод исключительно в одной, жёстко заданной разработчиком, кодировке. И далеко не всегда это OEM/866.

Цитата:

Цитата Artell
а вот ниже, вывод данных из программ кракозябрами часто идет »

Каких именно программ?

okshef 22-07-2013 08:58 2188462

Цитата:

Цитата Artell
У меня XP rus »

перенес. Читайте тему.

Artell 22-07-2013 14:52 2188649

Цитата:

Цитата Iska
Каких именно программ? »

Точно не уверен, но кажется те утилиты, которые раньше выводили нормально русский текст.
Например ncrack выдает в моем примере выше по команде
ncrack -v --user root localhost:22
"Китайское время (зима)" это же явно текст из виндовс. Когда он успевает кодировку попутать?

Iska 22-07-2013 15:01 2188657

Artell, не знаю, как раньше у Вас, но у меня нынче:
Код:

C:\Песочница\023>ncrack -v --user root localhost:22

Starting Ncrack 0.4ALPHA ( http://ncrack.org ) at 2013-07-22 14:59 ╠юёъютёъюх тЁхь* (чшьр)

Естественно, если выполнить «chcp 1251», то вывод становится нормален:
Код:

C:\Песочница\023>chcp 1251

C:\Песочница\023>ncrack -v --user root localhost:22


Starting Ncrack 0.4ALPHA ( http://ncrack.org ) at 2013-07-22 15:00 Московское время (
зима)

Такова беда большинства портированных утилит: в большинстве случаев их авторы знать ничего не хотят о каких-то там иностранцах и их бедах с кодировками.

Amigos 22-07-2013 15:15 2188665

Цитата:

Цитата Iska
Такова беда большинства портированных утилит »

да и встроенные в windows этим грешат:

Код:

C:\Users\vasiliy>nslookup
╤хЁтхЁ яю єьюыўрэш■:  server-s.local
Address:  192.168.7.227

а при желании легко смешивает в своём ответе две кодировки одновременно!
Код:

C:\Users\vasiliy>nslookup oszone.net
╤хЁтхЁ:  server-s.local
Address:  192.168.7.227

Не заслуживающий доверия ответ:
╚ь*:    oszone.net
Address:  89.108.118.149


Iska 22-07-2013 15:20 2188667

Во-во, и я про то же. Последний случай, конечно, наиболее фееричный. Как я понимаю, одну строку приложение выводит из своих ресурсов, а другая, возможно, из ресурсов какой-либо библиотеки.

Amigos 22-07-2013 15:20 2188668

Цитата:

Цитата Artell
"Китайское время (зима)" это же явно текст из виндовс. »

Из реестра. Там строчка в unicode.
Программа декодирует unicode в дефолтную кодировку windows. то есть в cp1251.
Ну а консоль работает тоже в дефолтой кодировке. Но уже cp866.
Если дефолтных кодировок целых две штуки и они разные, то кракозябры неизбежны.

Wu-Tang 01-05-2015 03:26 2502739

а не подскажите, какой ключ отвечает за цвет шрифта, тип шрифта и размер, хочу сделать теперь твик.

Iska 01-05-2015 08:57 2502768

Цитата:

Цитата Wu-Tang
цвет шрифта »

Во младшей, первой тетраде байта:
Код:

HKEY_CURRENT_USER\Console\ScreenColors
Имейте в виду, что:
  • в том же параметре в старшей тетраде того же байта задаётся цвет фона;
  • задаётся не сам цвет, а номер палитры цветов («ColorTable00»-«ColorTable15»);
  • это лишь первоначальная настройка цветов, даже интерпретатор командной строки может сам управлять цветом вывода («color /?»);
  • если игрались с настройками «использовать для всех окон с тем же именем» — параметры по умолчанию могут перекрываться параметрами для окна консоли с конкретным именем, например, в подразделе «HKCU\Console\%%SystemRoot%%_system32_cmd.exe».

Цитата:

Цитата Wu-Tang
тип шрифта »

Код:

HKEY_CURRENT_USER\Console\FontFamily
Цитата:

Цитата Wu-Tang
и размер »

Код:

HKEY_CURRENT_USER\Console\FontSize
P.S. Какое отношение всё это имеет к кодировке?

Wu-Tang 15-08-2015 06:30 2541809

Iska,
я просто не пойму, я настраивал-настраивал, так вот все запускаемые батники идут с зеленым цветов, когда запускаешь cmd через win+r то с другим, и когда с ярлыка в стандартных с третьим.
вот я и запутался, как настроить, чтоб везде было одинаково и без кракозябр.
ps я темы схожей не нашел, поэтому спросил здесь.

Iska 15-08-2015 08:03 2541826

Цитата:

Цитата Wu-Tang
я просто не пойму, я настраивал-настраивал, так вот все запускаемые батники идут с зеленым цветов, когда запускаешь cmd через win+r то с другим, и когда с ярлыка в стандартных с третьим. »

См., например:
Цитата:

Цитата Iska
если игрались с настройками «использовать для всех окон с тем же именем» — параметры по умолчанию могут перекрываться параметрами для окна консоли с конкретным именем, например, в подразделе «HKCU\Console\%%SystemRoot%%_system32_cmd.exe». »


Wu-Tang 14-12-2015 02:36 2584585

Iska,
спасибо, поигрался, все понял.

senglory 27-11-2016 20:58 2690967

Win 10 x64 Home Edition English, была установлена русская кодирорвка, к-рая показывалась на ура в FAR. Позавчера поставил последнее обновление на винду и слетела кодировка во всех консольных приложениях. В HKCU пробовал прописывать CodePage - без толку. Что делать?

Amigos 27-11-2016 21:07 2690972

Цитата:

Цитата senglory
Что делать? »

Сменить шрифт консоли?

senglory 27-11-2016 21:36 2690982

На какой менять-то?

Сменил на Lucida Console - показалось нормально. Но вот прежний Raster 10x18 - ни в какую. Что с этим делать?

Iska 27-11-2016 21:44 2690985

senglory, а для самой командной строки — как оно?

senglory 27-11-2016 22:39 2690995

Точно так же. Только в Lucida отображается, а в Raster - кракозябры.

Amigos 28-11-2016 20:06 2691264

Цитата:

Цитата senglory
Только в Lucida отображается »

можно использовать и другие векторные шрифты, раз с ними нет проблем

Andale mono
Anonymous pro
Consolas
Lucida Console


Цитата:

Цитата senglory
а в Raster - кракозябры. »

На удивление в win10 эта часть поменялась по сравнению с XP, завтра я посмотрю какие там шрифты юзаются.

Iska 28-11-2016 22:20 2691311

Amigos, теперь ещё расскажите товарищу, как добавить туда дополнительные шрифты ;). Или в теме таковое есть?

Consolas токмо чуток покрупнее трэба, мелкие размеры шрифта не его стихия.

Amigos 29-11-2016 12:02 2691425

Цитата:

Цитата Iska
расскажите товарищу, как добавить туда дополнительные шрифты »

для этого нужно проверить работоспособность способа под win10, скрины делались под WinXP


Цитата:

Цитата Iska
Consolas токмо чуток покрупнее трэба »

это же True Type - размер произвольный.

Amigos 29-11-2016 13:09 2691446

Цитата:

Цитата Iska
расскажите товарищу, как добавить туда дополнительные шрифты »

Узнал страшное.
В Win10 не надо никаких твиков реестра, достаточно просто установить моноширинный шрифт с соответствующим уникодным диапазоном символов в систему, и он сам появится в списке


Iska 30-11-2016 03:26 2691624

Цитата:

Цитата Amigos
это же True Type - размер произвольный. »

Я про скриншот. Увидит человече, разочаруется, не зная, что Consolas в принципе предрасположен к большим размерам и вполне на них смотрибелен.

Цитата:

Цитата Amigos
Узнал страшное. В Win10 не надо никаких твиков реестра, »

Amigos, :)!!! Но это всё равно меня не сподвигнет на переход ;).

madeinussr 01-07-2017 01:18 2748385

То есть, на сколько я понял, точечный шрифт, используемый в консоли по умолчанию, в принципе не может отображать кириллицу в других кодировках кроме ср866. Это тот же шрифт, который в notpad называется Terminal и у него там есть только набор символов OEM/DOS. С этим шрифтом в блокноте можно нормально работать с 866, но другие кириллические кодировки он не понимает. И поэтому при вводе CHCP 1251 в консоли вполне нормально получить непонятный набор букв из разных языковых областей шрифта. То есть шрифт отображает символы кириллицы, но их код не соответствует ср1251 и раскладка клавиатуры становится не стандартной при вводе русских символов - они находятся не на тех клавишах. То же происходит и с сообщениями, выводимыми интерпретатором кириллицей. Некоторые номера символов попадают в область кириллицы, но соответствуют совсем другим символам.

Короче, если у вас в консоли при стоящем по умолчанию точечном шрифте команды CHCP 1251 и CHCP 65001 выводят нечитаемые сообщения, это нормально. Не нужно искать причину этого в реестре или системных настройках или в установленных шрифтах. И если вам необходимо, чтобы кирилица отображалась в консоли в кодировках cp1251 и cp65001 придётся отказаться от шрифта стоящего по умолчанию и выбрать lucida console. Я правильно понял?

Amigos 01-07-2017 21:24 2748488

Цитата:

Цитата madeinussr
точечный шрифт, используемый в консоли по умолчанию, в принципе не может отображать кириллицу в других кодировках кроме ср866. »

Скажем так.
Точечный шрифт это анохронизм времён Windows 2.0 - Windows 3.1.
И у него … нет кодировки. Совсем нет.
Грубо говоря это набор из 255 маленьких ч/б картинок с нарисованными на них буквами и символами.
В русской windows xp порядок букв на этих картинках совпадает с порядком символов cp866.

Поменять порядок картинок символов в шрифте, расставить их также, как в cp1251 - будет "растровый шрифт, поддерживающий кириллицу в cp1251"

А тот шрифт, что "из коробки" , он да "только cp866"

ivan_krasnoyarov@vk 02-07-2017 14:09 2748562

А разве у векторных шрифтов - не картинки, только в векторном формате?

Использую давно точечный шрифт в Cmd, проблем с кодировкой не возникали. Векторные шрифты там выглядят очень тонкими.

Iska 02-07-2017 22:52 2748656

ivan_krasnoyarov@vk, видимо, Вы хотели сказать — контурные шрифты. Векторные, конечно, тоже есть, но навряд ли Вы про них.

И — не выглядят.

Amigos 03-07-2017 08:02 2748677

Цитата:

Цитата ivan_krasnoyarov@vk
А разве у векторных шрифтов - не картинки, только в векторном формате? »

Картинки (рандомное число) + стандартизированное описание какому символу уникода соответствует каждая картинка (их может быть несколько десятков тысяч в одном файле шрифта) + информация о поддерживаемых кодовых страницах с инфой где в шрифте лежит картинка для каждого символа конкретной кодовой страницы.

К примеру CP866 отличается от CP1251 не только тем, что "русские буквы в других местах", но и поддержкой спецсимволов псевдографики, и большинство "русских" ttf шрифтов поддерживают cp1251 , но не поддерживают cp866 из-за того что для её поддержки нужно рисовать псевдографику.


Время: 07:13.

Время: 07:13.
© OSzone.net 2001-