GetConsoleFontSize (kernel32)
Last changed: -64.4.1.10

.
Summary
Returns the height and width (in pixels) of the the console font with the specified font index

C# Signature:

    [DllImport("kernel32.dll")]
    static extern Coord GetConsoleFontSize(
        IntPtr hConsoleOutput,
        Int32 nFont);

User-Defined Types:

    [StructLayout(LayoutKind.Sequential)]
    public struct Coord
    {
        public short X;
        public short Y;
    }

Alternative Managed API:

Do you know one? Please contribute it!

Notes:

None.

Tips & Tricks:

Please add some!

Sample Code:

Here's a method that uses this method in conjunction with GetCurrentConsoleFont to return the size of the currently selected console font.

    private Coord GetCurrentFontSize()
    {

      //Need to use reflection to obtain pointer to the console output buffer
      Type consoleType = typeof(Console);

      IntPtr _consoleOutputHandle = (IntPtr)consoleType.InvokeMember(
        "_consoleOutputHandle",
        BindingFlags.Static | BindingFlags.NonPublic | BindingFlags.GetField,
        null,
        null,
        null);

       //Obtain the current console font index
        CONSOLE_FONT_INFO currentFont;
        bool success = GetCurrentConsoleFont(
        _consoleOutputHandle,
        false,
        out currentFont);

       //Use that index to obtain font size    
        Coord coord = GetConsoleFontSize(_consoleOutputHandle, currentFont.nFont);
        return coord;
    }

Documentation