private static Size GetConsoleFontSize() { // getting the console out buffer handle IntPtr outHandle = CreateFile("CONOUT$", GENERIC_READ | GENERIC_WRITE, FILE_SHARE_READ | FILE_SHARE_WRITE, IntPtr.Zero, OPEN_EXISTING, 0, IntPtr.Zero); int errorCode = Marshal.GetLastWin32Error(); if (outHandle.ToInt32() == INVALID_HANDLE_VALUE) { throw new IOException("Unable to open CONOUT$", errorCode); } ConsoleFontInfo cfi = new ConsoleFontInfo(); if (!GetCurrentConsoleFont(outHandle, false, cfi)) { throw new InvalidOperationException("Unable to get font information."); } return(new Size(cfi.dwFontSize.X, cfi.dwFontSize.Y)); }
public static ConsoleFontInfo GetConsoleFont() { ConsoleFontInfo ex = default; ex.cbSize = (uint)Marshal.SizeOf <ConsoleFontInfo>(); GetCurrentConsoleFontEx(GetStdHandle(StandardHandle.STD_OUTPUT_HANDLE), false, ref ex); return(ex); }
public static void SetConsoleFont(string name, short y, FontFamily ff = FontFamily.FF_DONTCARE, FontWeight fw = FontWeight.FW_NORMAL) { ConsoleFontInfo ex = default; ex.FontFamily = ff; ex.FontWeight = fw; ex.FaceName = name; ex.dwFontSize.X = 0; ex.dwFontSize.Y = y; SetConsoleFont(ex); }
public static extern bool GetCurrentConsoleFont(IntPtr hOut, bool bMaximumWnd, out ConsoleFontInfo ConsoleCurrentFont);
private static extern bool GetCurrentConsoleFont( IntPtr hConsoleOutput, bool bMaximumWindow, [Out][MarshalAs(UnmanagedType.LPStruct)] ConsoleFontInfo lpConsoleCurrentFont);
public static void SetConsoleFont(ConsoleFontInfo ex) { ex.cbSize = (uint)Marshal.SizeOf <ConsoleFontInfo>(); SetCurrentConsoleFontEx(GetStdHandle(StandardHandle.STD_OUTPUT_HANDLE), false, ref ex); }
internal static extern bool GetCurrentConsoleFont( IntPtr hConsoleOutput, bool bMaximumWindow, out ConsoleFontInfo lpConsoleCurrentFont);
public static extern bool SetCurrentConsoleFontEx(IntPtr hConsoleOutput, bool bMaximumWindow, ref ConsoleFontInfo lpConsoleCurrentFont);