How to Print a Picture Box, Image in C#.
Step 1: Click New Project, then select Visual C# on the left, then Windows and then select Windows Forms Application. Name your project "PrintPicture" and then click OK
Step 2: Design your form as below

Step 3: Add code to button click event handler as below
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Drawing.Printing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace PrintPicture
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void btnOpen_Click(object sender, EventArgs e)
{
//Open image file
using(OpenFileDialog ofd = new OpenFileDialog() { Filter = "JPEG|*.jpg", ValidateNames = true })
{
if (ofd.ShowDialog() == DialogResult.OK)
pictureBox.Image = Image.FromFile(ofd.FileName);
}
}
private void btnPrint_Click(object sender, EventArgs e)
{
//Show print dialog
PrintDialog pd = new PrintDialog();
PrintDocument doc = new PrintDocument();
doc.PrintPage += Doc_PrintPage;
pd.Document = doc;
if (pd.ShowDialog() == DialogResult.OK)
doc.Print();
}
private void Doc_PrintPage(object sender, PrintPageEventArgs e)
{
//Print image
Bitmap bm = new Bitmap(pictureBox.Width, pictureBox.Height);
pictureBox.DrawToBitmap(bm, new Rectangle(0, 0, pictureBox.Width, pictureBox.Height));
e.Graphics.DrawImage(bm, 0, 0);
bm.Dispose();
}
}
}
VIDEO TUTORIALS