Mega Code Archive

 
Categories / C# Tutorial / 2D Graphics
 

GraphicsUnit Inch

using System; using System.Drawing; using System.Drawing.Drawing2D; using System.Windows.Forms;     class WhatSize: Form {      public static void Main()      {           Application.Run(new WhatSize());      }      public WhatSize()      {           Text = "What Size?";           ResizeRedraw = true;       }      protected override void OnPaint(PaintEventArgs pea)      {           DoPage(pea.Graphics, ForeColor,ClientSize.Width, ClientSize.Height);      }           protected void DoPage(Graphics grfx, Color clr, int cx, int cy)      {           Brush brush = new SolidBrush(clr);           int   y     = 0;               DoIt(grfx, brush, ref y, GraphicsUnit.Inch);      }      void DoIt(Graphics grfx, Brush brush, ref int y, GraphicsUnit gu)      {           GraphicsState gs = grfx.Save();               grfx.PageUnit  = gu;           grfx.PageScale = 1;               SizeF sizef = grfx.VisibleClipBounds.Size;               grfx.Restore(gs);               grfx.DrawString(gu+ ": " + sizef, Font, brush, 0, y);           y += (int) Math.Ceiling(Font.GetHeight(grfx));      } }