Ich habe Code, mit dem programmgesteuert ein Dokument erstellt wird, das an den Drucker gesendet wird. Es geht ungefähr so:C# graphics creation
private void pd_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs ev)
{
ev.Graphics.DrawImage(pictureBox1.Image, 50, 100);
string drawToday="Date : "+strToday;
string drawPolicyNo="Policy # : " + strPolicyNo;
string drawUser="User : " + strUser;
Font drawFont=new Font("Arial",30);
SolidBrush drawBrush=new SolidBrush(Color.Black);
PointF drawPointToday=new Point(50,400);
PointF drawPointPolicyNo=new Point(50,450);
PointF drawPointUser=new Point(50,500);
ev.Graphics.DrawString(drawToday,drawFont,drawBrush,drawPointToday);
ev.Graphics.DrawString(drawPolicyNo,drawFont,drawBrush,drawPointPolicyNo);
ev.Graphics.DrawString(drawUser,drawFont,drawBrush,drawPointUser);
}
Seinen wirksamen Code, aber jetzt muß ich das gleiche Verfahren tun, sondern es auf eine Bilddatei zu schreiben, so dass es zu einem Browser gesendet werden kann und von dort gedruckt. Es sollte relativ einfach sein, diesen Code wiederzuverwenden, aber ich werde leider auf der Zeichenfläche aufgehängt, um das PrintPageEventArgument zu ersetzen.
Dank
bearbeiten: THanks ich, dass ich nur ein weiteres Graphics-Objekt, sondern das Graphics-Objekt selbst einen öffentlichen Konstruktor nicht haben, also was ich suche ist ein Vorschlag auf welches Objekt I müssen substantiiert werden, um ein Graphics-Objekt zum Zeichnen erstellen zu können. Ich dachte vielleicht Bitmap? Bitmaps sind natürlich pixelbasiert statt punktbasiert, daher war ich nicht sicher, ob dies das beste Medium ist.
Sie können eine Grafik erhalten Objekt von vielen verschiedenen Orten wie Bilder und Kontrollen. Sie werden wahrscheinlich die Eigenschaften von DpiX, DpiY, PageScale und PageUnit (und vielleicht noch ein paar andere, die ich nicht mehr im Kopf habe) untersuchen, um Grafikobjekte aus verschiedenen Quellen auf ähnliche Weise zu verhalten. Verwenden Sie den Debugger, um die Werte des Grafikobjekts in Ihrem PrintPage-Ereignis zu untersuchen, um einen guten Startpunkt zu erhalten. –