Ich möchte NUR eine RTF-Datei drucken mit VS2005 / C#

xMen

Mitglied
Hallo C#-Freunde,

ich arbeite aktuell mit VS 2005 und erstelle normalerweise meine Reports mit Crystal Reports.

Nun habe ich in einem Projekt die Aufgabe, innerhalb eines Druckjobs eine normale RTF-Datei drucken zu müssen, die natürlich auch Formatierungen enthält.

Dabei soll der Ausdruck der Datei aber nicht über eine Preview-Funktion realisiert ( z. B. Anzeige zunächst in WORD oder Wordpad ), sondern direkt auf den Drucker geleitet werden, ohne Interaktion mit dem Benutzer. Da ich mit dem direkten Ausdruck einer Datei bisher nichts zu tun hatte, habe ich versucht, die Datei über PrintDocument() zu drucken. Eigentlich ganz einfach sollte man meinen...

Der Drucker beginnt auch zu drucken, aber leider ist die Seite leer !

Frage:

Wie kann ich auf einfache Art und Weise eine RTF-Datei, die Formatierungen enthält, ohne Interaktion durch den Benutzer im "WYSIWYG"-Stil an den Drucker leiten?

Ich habe über Google diverse Beiträge dazu gefunden. Leider enthalten die meisten dem Umweg über ein Preview oder schicken den Inhalt einer Datei "zeilenweise" und "unformatiert" auf den Drucker.

Gibt es dazu nicht irgendeinen 3-Zeiler, mit dem ich das Ziel erreichen kann ?

Bin für jede Anwort dankbar...
 
Mit einem Dreizeiler wird's wohl nicht getan sein. Du könntest den RTF-Text in eine RichTextBox packen (muss ja nicht angezeigt werden) und dann von dort aus drucken. Leider hat die RichTextBox selber keine Möglichkeiten zum Drucken, daher wird's dann doch etwas aufwendiger: Inhalt eines RichTextBox-Steuerelements drucken

Gruß
MCoder
 
Machts das doch einfacher. Drucken unter .NET ist unlustig, daher folgende Variante:

Text in ein XmlDocument laden. Ein XSL basteln, welche eine HTML-Transformation vornimmt und das daraus resultierende HTML einfach im Browser-Control anzeigen lassen. Darüber kann dann sehr bequem ausgedruckt werden.
 

Neue Beiträge

Zurück