Drawing Images in GDI+

In this article I will explain about drawing images in GDI+.


This article has been excerpted from book "Graphics Programming with GDI+".

The Graphics class also provide functionality for drawing images, using DrawImage and DrawImageUnscaled.DrawImage draws an Image object with a specifies size, and DrawImageUnscaled draws an Image object without scaling it. The DrawImage method has many overloaded forms.

An application creates Image object by calling the Image class's static FromFile method, which takes a file name as an argument. After that you create the coordinates of a rectangle in which to draw the image and call DrawImage. Listing 3.23 draws an image on the surface with a size of ClientRectangle.

LISTING 3.23: Drawing an image


using
System;
using
System.Collections.Generic;
using
System.ComponentModel;
using
System.Data;
using
System.Drawing;
using
System.Linq;
using
System.Text;
using
System.Windows.Forms;

namespace DrawingImages

{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
        {
            try
            {
                // Create an image from a file
                Image newImage = Image.FromFile("dnWatcher.gif");

                // Draw image
                e.Graphics.DrawImage(newImage, this.ClientRectangle);
                newImage.Dispose();
            }

            catch (Exception ex)
            {
                MessageBox.Show(ex.Message.ToString());
            }
        }
     }
}


Figure 3.35 shows the output from Listing 3.23.

Figure 3.35.jpg

FIGURE 3.35: Drawing an image

Conclusion

Hope the article would have helped you in understanding drawing images in GDI+. Read other articles on GDI+ on the website.

bookGDI.jpg This book teaches .NET developers how to work with GDI+ as they develop applications that include graphics, or that interact with monitors or printers. It begins by explaining the difference between GDI and GDI+, and covering the basic concepts of graphics programming in Windows.