Druckvorschau wie in Word
-
Gibt es eine Komponente, mit der man einen beliebigen Text, verschiedene Fonts, Größen usw. auf eine Fläche zeichnet (oder so ähnlich) und sich das dann - in Abhängigkeit vom verwendeten Druckertreiber des Systems - als Word-vergleichbare Druckvorschau ausgeben lassen kann?
So wie ich das sehe, ist der QuickReport doch dafür nicht allzu geeignet.
-
üblicherweise doch der Quickreport
-
QuickReport ist ´ne Krücke. Ich verwende für Vorschau und Druck List & Label. L&L hat einfache VCL-Komponenten, lässt sich relativ leicht ansteuern und ist auch bei großen Datenmengen super schnell.
OK, hier der Link zur Website von List & Label: http://www.combit.net/reporting/page609.aspx
-
Da diese nicht regulär dabei sind, wäre ein Link nicht schlecht
-
Kann mir jemand ein Beispiel für eine Druckvorschau aus einen RichEdit geben? Komme damit noch nicht klar.
-
Womit kommst du nicht klar?
Mit
- dem Quickreport?
- den empfohlenen zusätzlichen Komponenten?
- ??
-
Achso ja, mit dem List&Label meine ich.
-
Hi,
RichEdit1->Print(""); //mehr dazu in der Borland-Hilfe
In Examples\Apps\RichEdit
gibt es ein Beispiel Projekt.Grüsse
-
Was könnte
RichEdit1->Print("");
"mit dem List&Label meine ich." und einer Druckvorschau
nun gemein haben?
Zumal die PRint-Methode das Ding "irgendwo" hin klatscht, und eine gewünschte Druckvorschau nicht realisiert?
@druki
Da es sich um kommerzielle Komponenten handelt, die nicht jeder hat, wird hier kaum einer was dazu sagen können. Kann dir der Support nciht weiterhelfen, gibt es dort ein Forum, kann man beim Support Beispiele bekommen?
-
Hi,
Achso die Druckvorschau sorry
so könnte es auch fuktionieren:void Ttext::rtf_rect_back(int x1, int y1, int x2, int y2, TCanvas *back) { //x1...y2 sind die Koordinaten vom Ziel-Canvas // also die linke obere Ecke sowie rechte unter Ecke von // (Paintbox->Canvas, TImage->Bitmap->Canvas .... ====== back) TRichEdit *edi=RichEdit1; TFormatRange fmt; //edi Canvas Übertragung auf back vorbereiten! fmt.hdc = back->Handle; fmt.hdcTarget = fmt.hdc; fmt.rc = Rect( x1*1440/this->PixelsPerInch, //rect needs to be specified y1*1440/this->PixelsPerInch, //in twips (1/1440 inch) as unit x2*1440/this->PixelsPerInch, //erst inch in pixel (oder so) y2*1440/this->PixelsPerInch); fmt.rcPage = fmt.rc; fmt.chrg.cpMin = 0; //vom anfang fmt.chrg.cpMax = edi->GetTextLen(); //bis ende (kompletter Text bitte) edi->Perform(EM_FORMATRANGE,1,int(&fmt)); //mit 1,fmt) Canvas übertragen! edi->Perform(EM_FORMATRANGE,0,0); //mit 0,0) Hintergrund Buffer deleten!! }//---------------------------------------------------------------------------
Muss eigentlich auch funktionieren.
Grüsse
-
Wie kann ich dem QRPreview1 den inhalt aus meinem RichEdit übergeben???