Is it possible to get/set the console font size?
I have seen posts on changing console true type font and console colors (rgb) but nothing on setting or getting the console font size.
The reason I want to change the font size is because a grid is printed to the console, and the grid has many columns, so, it fits better with a smaller font. I’m wondering if it’s possible to change it at runtime rather than allowing the default or configured fonts to take priority / override inheritance.
Как изменить размер шрифта в консоли c

As implied from the title, is there any system(«»); commands to alter the font size whilst running the program?
Otherwise my console app will be difficult to read for some users.
I already manipulate the colour scheme with system(«color xy»);
Where x and y represent different colour codes. But is there a way to do the same sort of thing but increasing the actual font size instead?
Thank you for any help you can provide 🙂



When you try changing font size, you should first get the CONSOLE_FONT_INFOEX structure with GetCurrentConsoleFontEx, change the size member and then call SetCurrentConsoleFontEx.

I am sorry but that didn’t make much sense to me at all :S
I have not progressed into HANDLE’s properly yet and have only touched on them whilst using them to set/get clipboard text.
When getting the CONSOLE_FONT_INFOEX structure what do I need to set it to?
Will the following be what I need?

No. Are you unfamiliar with structs? If so, you may want to read this: http://www.cplusplus.com/doc/tutorial/structures/
here’s a full example. I can’t say if it works, because apparently functions Get/SerCurrentConsoleFontEx are only available in windows vista and later.
Можно ли получить/установить размер шрифта консоли?
Я видел сообщения об изменении шрифта истинного типа консоли и цветов консоли (rgb), но ничего о настройке или получении размера шрифта консоли.
Причина, по которой я хочу изменить размер шрифта, заключается в том, что сетка выводится на консоль, а сетка имеет много столбцов, поэтому она лучше подходит для меньшего шрифта. Мне интересно, можно ли изменить его во время выполнения, а не разрешить шрифтам по умолчанию или настроенным шрифтам иметь приоритет/переопределить наследование.
Можно ли получить / установить размер шрифта консоли в С # .net?
Я видел сообщения об изменении шрифта истинного типа консоли, цвета консоли (rgb), но ничего не об установке или получении размера шрифта консоли. edit: причина = сетка выводится на консоль, сетка имеет много столбцов, лучше подходит для более мелкого шрифта, интересно, можно ли изменить во время выполнения, а не разрешать стандартным или настроенным шрифтам принимать приоритет / переопределять наследование.
задан 01 июля ’11, 22:07
Разве это не должно быть оставлено на усмотрение пользователя? Конечно, пользователь всегда может изменить его через контекстное меню приложения. — Noldorin
Почему вы прямо запрашиваете статью? Хотя я ничего не могу найти по этому поводу. — Teo Klestrup Röijezon
Я не запрашивал статью явно, вопрос в том, возможно ли изменить размер шрифта консоли в c # .net? — Chris
@Chris, в своем исходном вопросе вы задали Anyone see an article for this? . В моей книге это считается явным запросом статьи. Впрочем, теперь с переформулировкой все в порядке. — Teo Klestrup Röijezon
Вероятно, вам следует использовать ширину консоли, чтобы решить, как отформатировать таблицу, вместо того, чтобы пытаться испортить размер шрифта или размер окна. Только мои 2 цента. — Paul Wheeler
3 ответы
Может быть это статья может вам помочь
Вот как его использовать для вывода списка истинных шрифтов для консоли.
Ключевые функции: SetConsoleFont , GetConsoleFontInfo и GetNumberOfConsoleFonts . Они не имеют документов, поэтому используйте их на свой страх и риск.
ответ дан 17 апр.
Недокументированные функции — это весело! А если серьезно, то хороший ответ. — Пол Уиллер
Может быть, вместо того, чтобы указывать на другую страницу, вы можете кратко рассказать, почему это помогает? — Железный Человек
Хотя теоретически это может дать ответ на вопрос, было бы предпочтительнее чтобы включить сюда основные части ответа и предоставить ссылку для справки. — Кев
Ссылка на возможное решение всегда приветствуется, но, пожалуйста, добавить контекст вокруг ссылки так что ваши коллеги-пользователи будут иметь некоторое представление о том, что это такое и почему это там. Всегда указывайте наиболее релевантную часть важной ссылки, если целевой сайт недоступен или постоянно отключен. Примите во внимание, что существо чуть больше, чем ссылка на внешний сайт это возможная причина Почему и как удаляются некоторые ответы?. — эликсенид
Неработающая ссылка для меня, также не дружественная к Mac / Linux: I — Максимум
In это Я нашел гораздо более элегантное решение, которое теперь отлично работает.