Entwickler-Ecke

Sonstiges (.NET) - Grafik im Hintergrund


discipuli - Mi 18.03.20 13:14
Titel: Grafik im Hintergrund
Ich suche den Code, mit dem ich eine Grafik hinter einen Text legen.
Dazu möchte ich die Grafik an eine bestimmte Stelle auf einer DIN A4 Seite platzieren.
Discipuli


Moderiert von user profile iconTh69: Topic aus WinForms verschoben am Sa 21.03.2020 um 10:34


Th69 - Mi 18.03.20 13:26

Hallo,

ein bißchen detaillierter solltest du es schon beschreiben.
Meinst du auf einer Form oder beim Drucken (da du von DIN A4 sprichst)?

Generell kannst du aber mit den Methoden der Graphics [https://docs.microsoft.com/de-de/dotnet/api/system.drawing.graphics]-Klasse sowohl Bilder als auch Text zeichnen (auch übereinander).


discipuli - Fr 20.03.20 13:01

ich habe diese dumme Frage gestellt, weil ich nicht weiter weis.
Deinen Hinweise habe ich ausgedruckt.
Was aber hättest du gern zusätzlich gewusst?
Discipuli


Th69 - Fr 20.03.20 13:40

Du hast die Frage "Meinst du auf einer Form oder beim Drucken (da du von DIN A4 sprichst)?" immer noch nicht beantwortet.


discipuli - Fr 20.03.20 19:43

Das Wasserzeichen soll auf einer DIN A4 an einer bestimmten Stelle hinter den Text gelegt werden.
Der Anhang ist ziemlich genau eine DIN A4 Seite.
LibreOffice 6.3.4.2 geht das so:
Text eingeben, Bildladen, Bild markieren, Umlauf im Hintergrund.
Das scheint mir sehr einfach konstruiert zu sein.
Es wäre schön den Vorgang so nach zubauen.
Discipuli.
Fragte sieht man hier in der Vorschau nicht das Bild?


Ralf Jansen - Fr 20.03.20 19:54

Du bist hier im Winforms-Bereich. Und user profile iconTh69 hat vermutlich genauso wie ich Probleme den Zusammenhang zum drucken zu finden. Winforms ist eine UI Technologie also was zur Anzeige auf einem Bildschirm und hat so erstmal nichts mit drucken am Hut. Wir haben also gerade keine Idee welche Technik zum erstellen eines Druckoutputs du benutzt. Es gibt natürlich wieder mal dutzende Wege/Techniken das zu machen. Verrate uns doch am besten was du genau zum drucken im Moment benutzt dann hat vielleicht jemand eine Idee.


discipuli - Sa 21.03.20 10:56

Hallo Th65, Ralf,
bevor ich es drucken kann, muss es ja erst mal erstellt werden.
Wenn es dann vorhanden ist könnte ich Verschiedenstes damit anstellen.
Z. B könnte ich mit einem Bildschirmfoto; hardcopy als JPG abspeichern.
oder eben auch drucken aus dem einem Grafikprogramm heraus.
Wenn das Ganze in einem Editor als Bild geladen wird könnte ich es auch von dort drucken.
Wie geschrieben es muss ja erst mal vorhanden sein.
Discipuli


Ralf Jansen - Sa 21.03.20 12:32

Dann gehe ich mal davon aus das du noch nichts hast an dem man weiter arbeiten kann sondern du vor einem lehren Blatt sitzt und noch alle Optionen hast und gehen mal ein paar Möglichkeiten durch

- Die PrintDocument [https://docs.microsoft.com/de-de/dotnet/api/system.drawing.printing.printdocument?view=netframework-4.8] Klasse.
Wenn du wie im Beispiel der Doku die Ausgabe der verschiedenen Teile (erst Wasserzeichen dann Text) in der richtigen Reihenfolge machst bekommt man das was du willst
- verschiedene PDF Generatoren
Wenn du HTML beherrscht gibt es verschiedenste Möglichkeiten Html (das wunderbar zum Design geeignet ist) in PDF (das sich dann wunderbar drucken lässt) zu wandeln. Z.B mit IronPDF [https://ironpdf.com/]
- Reporting Tools
Wenn du Wasserzeichen brauchst brauchst du vielleicht demnächst noch mehr Kontrolle wie was gedruckt wird. Da helfen spezielle Reporting Tools. Da ist man schnell im kommerziellen Bereich. Eine freie Lösung wäre FastReports [https://github.com/FastReports/FastReport]
- Manche Drucker lassen es zu ein Wasserzeichen in ihrem Druckertreiber zu hinterlegen das dann beim drucken verwendet wird. An die Druckereinstellungen kommst du in .Net über die PrinterSettings [https://docs.microsoft.com/de-de/dotnet/api/system.drawing.printing.printersettings?view=netframework-4.8] Klasse