![]() |
Richedit drucken mit Farbe UND Seitenzahl
Hallo,
möchte eine Richedit ausdrucken - tja, bisher muss ich mich entscheiden zwischen
Delphi-Quellcode:
was mir das Feld schön in Farbe rausdruckt, so wie ich´s auf dem Bildschirm sehe, oder einer eigenen Routine
Richedit1.print();
Delphi-Quellcode:
Hier schaffe ich es Seitenzahl, Datum und Name des Dokuments einzuplegen.
i := 0;
j := 100; Seite := 1; Seitenanzahl := (Richedit1.Lines.Count div 64) + 1; neueSeite := false; printer.BeginDoc; repeat if (getasynckeystate(vk_escape) <> 0) then break; printer.Canvas.TextOut(200,j,Richedit1.Lines[i]); printer.Canvas.TextOut(2300,6850,inttostr(Seite) + ' - ' + inttostr(Seitenanzahl)); // Seite 1-2 printer.Canvas.TextOut(4480,6850,datetostr(now)); printer.Canvas.TextOut(200,6850,Panel3_1.Caption); if j = 6400 then neueSeite := true; if neueSeite = true then begin printer.NewPage; neueseite := false; j := 100; Seite := Seite + 1; end; i := i + 1; j := j + 100; until i = Richedit1.Lines.count; printer.EndDoc; Wie geht beides ??? PS: Die Stiftfarbe vor jeder Zeile zu ändern hab ich schon versucht, das Problem liegt eher darin, herauszufinden, welche Farbe hat jedes Zeichen, da wie könnte es anders sein, die Zeilen nicht unbedingt in deiner Farbe sein müssen |
Re: Richedit drucken mit Farbe UND Seitenzahl
Wenn du den Sourcecode der VCL hast (bitte deine Delphi Version im Benutzerprofil eintragen), dann kannst du
die procedure TCustomRichEdit.Print(const Caption: string) in dein Programm kopieren und entsprechend anpassen. (nicht ganz einfach, aber möglich) Der Trick ist die Message EM_FORMATRANGE, die an das Handle von TRichEdit geschickt wird. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:40 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz