Mega Code Archive

 
Categories / C# / 2D Graphics
 

Center an Image (VerticalResolution, HorizontalResolution)

using System; using System.Drawing; using System.Windows.Forms;     class CenterImage: Form {      Image image = Image.FromFile("Color.jpg");          public static void Main()      {           Application.Run(new CenterImage());      }      public CenterImage()      {           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)      {           grfx.PageUnit = GraphicsUnit.Pixel;           grfx.PageScale = 1;               RectangleF rectf = grfx.VisibleClipBounds;               float cxImage = grfx.DpiX * image.Width /                                               image.HorizontalResolution;           float cyImage = grfx.DpiY * image.Height /                                               image.VerticalResolution;               grfx.DrawImage(image, (rectf.Width  - cxImage) / 2,                                  (rectf.Height - cyImage) / 2);      } }