2016-02-13 3 views

ответ

7

Вы можете изменить размер шрифта с помощью SetCurrentConsoleFontEx.
Ниже приведен небольшой пример, который вы можете играть с, убедитесь, что вы #include <cwchar> и #include <windows.h>

CONSOLE_FONT_INFOEX cfi; 
cfi.cbSize = sizeof(cfi); 
cfi.nFont = 0; 
cfi.dwFontSize.X = 0;     // Width of each character in the font 
cfi.dwFontSize.Y = 24;     // Height 
cfi.FontFamily = FF_DONTCARE; 
cfi.FontWeight = FW_NORMAL; 
std::wcscpy(cfi.FaceName, L"Consolas"); // Choose your font 
SetCurrentConsoleFontEx(GetStdHandle(STD_OUTPUT_HANDLE), FALSE, &cfi); 

std::cout << "Font: Consolas, Size: 24\n"; 

Если вы выбираете Arial или другие, возможно, придется дать ему ширину размер шрифта. Для более information.


Разница между system() вызовами и с помощью Windows.h что system() звонков ресурсов тяжелы и небезопасны. Дополнительная информация here.

+0

* «Если вы выберете Arial или другие» * - какие? * «[...] вам может потребоваться указать ширину шрифта». * - при каких условиях? – IInspectable

+0

Возможно, стоит отметить, что для 'SetCurrentConsoleFontEx' требуется Vista или более поздняя версия (_WIN32_WINNT> = 0x0500). Кроме того, в документации не ясно, как именно 'cfi.nFont = 0;' работает ("* nFont = индекс шрифта в таблице шрифтов консоли системы. *"). – dxiv

+0

любой шанс, что вы знаете, как это сделать на Ubuntu? – serup