Laden...

Image Objekt ganzseitig drucken

Erstellt von Embryo vor 9 Jahren Letzter Beitrag vor 9 Jahren 761 Views
E
Embryo Themenstarter:in
2 Beiträge seit 2014
vor 9 Jahren
Image Objekt ganzseitig drucken

Hallo,

ich habe eine Frage zu folgendem Problem...

Ich möchte ein Image aus meiner PictureBox ganzseitig auf eine DINA4 Seite drucken.

Eine DINA4 Seite müsste bei einem Drucker mit 300dpi ja 2480x3508 Pixel groß sein. Das ist für meine Form natürlich zu groß also verwende ich die Maße geteilt durch 5.

-> d.h. ich habe jetzt ein Image mit 496x701 Pixel

Um dieses Image zu drucken habe ich bereits etwas Code geschrieben.

Wie schaffe ich es nun, dass das Bild "gestrecht" auf die DINA4 Seite gedruckt wird?

(Einfach das Image auf 2480x3508 Pixel zu strechen funktioniert nicht... bzw. druckt das Bild viel zu groß)


        private void button1_Click(object sender, EventArgs e)
        {
            PrintDocument pd = new PrintDocument();
            pd.PrintPage += PrintPage;
            pd.OriginAtMargins = true;
            pd.Print();   
        }


        private void PrintPage(object o, PrintPageEventArgs e)
        {
            System.Drawing.Image img = pictureBox1.Image;
            Point loc = new Point(0, 0);
            e.Graphics.DrawImage(img, loc);
        }

Liebe Grüße
Mario

3.170 Beiträge seit 2006
vor 9 Jahren

Hallo,

könnte mit dem Wert der Graphics.PageUnit-Property zusammenhängen.

Hast Du mal ve3sucht, was in de Doku steht?

e.Graphics.DrawImage(img, e.Graphics.VisibleClipBounds);

Damit müsse die Umrechnerei und Skalierung automatisch in der richtigen Einheit laufen. Ausprobiert habe ich es aber jetzt nicht.

Gruß, MarsStein

Non quia difficilia sunt, non audemus, sed quia non audemus, difficilia sunt! - Seneca

E
Embryo Themenstarter:in
2 Beiträge seit 2014
vor 9 Jahren

Hat Super Funktioniert!
Danke 😃