Rich Edit drucken
-
Hallo,
ich weiß das Thema wurde hier schon oft behandelt, aner ich habe noch keine Lösung gefunden. Also ich habe mehrere RichEdit's mit formatiertem Text und diese möchte ich auf einer Seite ausgeben. Das mache ich nun wie folgt:
void __fastcall TForm1::Drucken1Click(TObject *Sender) { PrintDialog1->Execute(); TPrinter *Prntr = Printer(); TRect r = Rect(200,200,Prntr->PageWidth - 200,Prntr->PageHeight- 200); Prntr->BeginDoc(); for (int i = 0; i < anzahl; i++) { if(i != 0) { Prntr->Canvas->TextOut(200,200 + (i*70),""); Prntr->Canvas->FrameRect(r); } for(int j=0; j < pRich[i]->Lines->Count; j++) { if(j== 0) { Prntr->Canvas->TextOut(200,200,pRich[i]->Lines->Strings[j]); Prntr->Canvas->FrameRect(r); } else { Prntr->Canvas->TextOut(200,200 + (j*52),pRich[i]->Lines->Strings[j]); Prntr->Canvas->FrameRect(r); } } } Prntr->EndDoc(); } Dabei ergeben sich zwei Probleme: 1. Es soll der Inhalt der Unterschiedlichen RichEdit's unterienander ausgedruckt werden, aber das passiert nicht sie werden übereinander gedruckt. 2. Mir geht die Formatierung des Textes verloren, also Farbe Größe. Wer kann mir helfen?
-
Ok, das erste Problem habe ich jetzt selber gelöst aber mit den Formatierungen komme ich nicht weiter.
Wer weiß wie man das am besten macht?
-
Hallo,
Wenn du über Lines->Strings[] druckst müssen die Formatierungen ja verloren gehen, da es sich hier nur um normale StringListen geht.
Den Beitrag hast du dir angeschaut?
RichEdit drucken