Search from Cycling Blog

Printing the Picture in C#.NET

Printing the Picture in C#.NET

Language: C#.NET

Author: Aamir Mustafa

E-Mail: aamir_mustafa2007@msn.com

aamirmustafa134@gmail.com

Introduction:

I was looking different methods how to print a picture, so I have one way. This time I m going to tell you in C#.NET

This article will show simple method to print the picture

How to Print:

Create an empty project

On the form, add a menu bar and change its name to File

Below File menu, add these menus

mnuOpen

mnuPageSetup

mnuPrint

So we have following shape

Fileà Open, Page Setup, Print

After adding the menus

Go to Toolbox and go to Printing section and add following controls

PageSetupDialog1

We are using for setting page set up

PrintDocument1

We are using for printing document

PrintPreviewDialog1

We are using for take preview of our print

After adding all these controls, add a picture box to the form

Now we are going to add code

First of all add following code to Open menu

We will use it for opening a picture from disk

Code:

private void mnuOpen_Click(object sender, EventArgs e)

{

Bitmap m_bitmap;

OpenFileDialog openFileDlg=new OpenFileDialog();

openFileDlg.Filter = "Images (*.BMP;*.JPG;*.GIF)|*.BMP;*.JPG;*.GIF|All files (*.*)|*.*";

if (openFileDlg.ShowDialog() == DialogResult.OK)

{

string strFileName = openFileDlg.FileName;

m_bitmap = new Bitmap(strFileName);

this.pictureBox1.Image = m_bitmap;

}

}

After adding above code , add following code in Page setup menu

We are using it for setting page setup

Code:

private void mnupageSetup_Click(object sender, EventArgs e)

{

pageSetupDialog1.Document = printDocument1;

pageSetupDialog1.ShowDialog();

}

Now we will add code in Print event click

Code:

private void mnuprint_Click(object sender, EventArgs e)

{

printPreviewDialog1.Document=printDocument1;

printPreviewDialog1.ShowDialog();

}

At the end we will add code behind PrintPage event of PrintDocument1

So double click on it on the form or access its PageEvent in code editor and add following code

Code:

private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)

{

e.Graphics.DrawImage(this.pictureBox1.Image, 0, 0, this.pictureBox1.Width, this.pictureBox1.Height);

}

In the above code we are using DrawImage method of Graphics

DrawImage has five arguments

First argument which we pass is image, so here we are passing here our picture

Next argument is the x location of image and next location is y

Third is width of image, we are setting our picture width and so next is height of our image.

 

0 comments: