Alex Gordon
Alex Gordon

Reputation: 60691

printing an image in landscape orientation?

I am converting a control to a bitmap and print it:

using (MemoryStream ms = new MemoryStream())
{
    chart1.SaveImage(ms, ChartImageFormat.Bmp);
    Bitmap bm = new Bitmap(ms);

    PrintDocument doc = new PrintDocument();
    doc.PrintPage += (s, ev) =>
    {
        ev.Graphics.DrawImage(bm, Point.Empty); // adjust this to put the image elsewhere
        ev.HasMorePages = false;
    };

    doc.Print();
}

How can you specify to print it in landscape orientation?

Upvotes: 7

Views: 9778

Answers (2)

Will Marcouiller
Will Marcouiller

Reputation: 24132

Through the PrintDocument.DefaultPageSettings browsable property.

PrintDocument.DefaultPageSettings.Landscape = true;

So, for your code sample, this would be:

doc.DefaultPageSettings.Landscape = true;

Upvotes: 4

Matthew Vines
Matthew Vines

Reputation: 27561

doc.DefaultPageSettings.Landscape = true;

http://msdn.microsoft.com/en-us/library/system.drawing.printing.pagesettings.landscape.aspx

Upvotes: 14

Related Questions