2017-10-24 2 views
2

Ich versuche ein Bild zu drucken, aber mein Seitenverhältnis auf dem A4-Papier ist falsch. Ich habe meine Suche gemacht und versucht, die gleiche Größe wie das A4-Papier zu verwenden, aber kein Glück. Ich arbeite an Unity3D 2017.0.3f mit .NET 3.5.Bilddruck nicht korrektes Seitenverhältnis?

image

Wie Sie im Bild oben sehen kann, ist es in der rechten unteren Ecke und verlassen den Raum hinter alle. Ich will es einfach im Querformat A4 drucken.

Hier ist mein Code, ich bin mit Druck:

public void btnPrint_Click() 
{ 
    PrintDocument pd = new PrintDocument(); 
    pd.PrinterSettings.PrinterName = availablePrinter[0]; 
    pd.DefaultPageSettings.Margins = new Margins(100, 100, 100, 100); 
    pd.OriginAtMargins = true; 
    pd.DefaultPageSettings.Landscape = true; 
    pd.PrinterSettings.DefaultPageSettings.Landscape = true; 

    pd.PrintPage += new PrintPageEventHandler(pqr); 
    pd.Print(); 
} 

void pqr(object o, PrintPageEventArgs e) 
{ 
    Debug.Log("PrintingImage"); 

    System.Drawing.Image i = System.Drawing.Image.FromFile(path); 
    e.Graphics.DrawImage(i, e.MarginBounds); 
} 

Ich versuchte, ein rect verwenden und es manuell machen, aber immer noch nicht funktioniert.

+0

Ändern Warum Sie Landschaft setzen = true; wenn Sie in Portait wollen? –

+0

Oh sorry, ich will es Landschaft – Nanopili

+0

Bearbeiten Sie meine Frage, behoben – Nanopili

Antwort

0

So schaffte ich es zu beheben, aber die Margen

 pd.DefaultPageSettings.Margins = new Margins(0, 0, 50, 125); 
Verwandte Themen