Print images c#.net
85,757
Solution 1
The Code below uses the PrintDocument object which you can place an image on to the printdocument and then print it.
using System.Drawing.Printing;
...
protected void btnPrint_Click(object sender, EventArgs e)
{
PrintDocument pd = new PrintDocument();
pd.PrintPage += PrintPage;
pd.Print();
}
private void PrintPage(object o, PrintPageEventArgs e)
{
System.Drawing.Image img = System.Drawing.Image.FromFile("D:\\Foto.jpg");
Point loc = new Point(100, 100);
e.Graphics.DrawImage(img, loc);
}
Solution 2
Using the location, I have this FileInfo extension method that does it:
public static void Print(this FileInfo value)
{
Process p = new Process();
p.StartInfo.FileName = value.FullName;
p.StartInfo.Verb = "Print";
p.Start();
}
Author by
Carlos Guillermo Bolaños Lopez
Updated on March 19, 2020Comments
-
Carlos Guillermo Bolaños Lopez over 4 years
I have an image in a PictureBox, and I want to print it. No formatting, no nothing, just print it.
I've been searching on Google but I've got nothing, only people printing forms or text or reports.
private string imgSrc; public string ImgSrc { get { return imgSrc; } set { imgSrc = value; } } public Id_Manager() { ImgSrc = "D:\\Foto.jpg"; InitializeComponent(); idPicture.Load(this.ImgSrc); }
Obviously the image is going to change, but for now I'm just interested in printing that image. I'm saving the url in a property just in case. Any help?
-
itsho over 12 yearson the last line, it should be "img", not "ing" :-)
-
itsho over 12 yearsdo NOT forget to dispose the "img" on printPage(...) otherwise, you'll be stuck on the second printing with IOException :-)