All in the font family: Ascent, Descent, Line spacing, Height : Font « 2D « C# / CSharp Tutorial






All in the font family: Ascent, Descent, Line spacing, Height
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
  
public class FontFamilyAscentDescentLineHeight : System.Windows.Forms.Form
{
  private System.ComponentModel.Container components = null;

  public FontFamilyAscentDescentLineHeight()
  {
    InitializeComponent();
  }

  protected override void Dispose( bool disposing )
  {
    if( disposing )
    {
      if (components != null) 
      {
        components.Dispose();
      }
    }
    base.Dispose( disposing );
  }

  private void InitializeComponent()
  {
    this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
    this.ClientSize = new System.Drawing.Size(392, 237);
    this.Paint += new System.Windows.Forms.PaintEventHandler(this.OnPaint);

  }
  [STAThread]
  static void Main() 
  {
    Application.Run(new FontFamilyAscentDescentLineHeight());
  }

  protected void OnPaint (object sender, System.Windows.Forms.PaintEventArgs e)
  {
    Graphics g = e.Graphics;

    FontFamily myFamily = new FontFamily("Verdana");
    Font myFont = new Font(myFamily, 12);
    
    int y = 0;
    int fontHeight = myFont.Height;

    this.Text = "Measurements are in GraphicsUnit." + myFont.Unit.ToString();

    g.DrawString("The Verdana family.", myFont, Brushes.Blue, 10, y);

    Console.WriteLine("Ascent for bold Verdana: " + myFamily.GetCellAscent(FontStyle.Bold));
    Console.WriteLine("Descent for bold Verdana: " + myFamily.GetCellDescent(FontStyle.Bold));
    Console.WriteLine("Line spacing for bold Verdana: " + myFamily.GetLineSpacing(FontStyle.Bold));
    Console.WriteLine("Height for bold Verdana: " + myFamily.GetEmHeight(FontStyle.Bold));
  }
}








27.16.Font
27.16.1.All in the font family: Ascent, Descent, Line spacing, HeightAll in the font family: Ascent, Descent, Line spacing, Height
27.16.2.Draw Font Families FormattedDraw Font Families Formatted
27.16.3.Draw Font FamiliesDraw Font Families
27.16.4.FontStyle.Regular
27.16.5.FontStyle.Bold
27.16.6.FontStyle.Italic
27.16.7.Get Font Height
27.16.8.Draw left justified text based on font size
27.16.9.Draw right justified text based on font size
27.16.10.Draw centered text