Einzelnen Beitrag anzeigen

Narayana
(Gast)

n/a Beiträge
 
#3

Re: verschiedene Schriftarten im Quickreport

  Alt 10. Mai 2005, 12:47
Danke erstmal für deine Lösung,
die funktioniert zwar sehr gut, ist aber sehr unverständlich bzw. komplex...
nachdem ich versucht habe da durchzusteigen habe ich eine leichtere Lösung gefunden.

Vielleicht sucht ja jemand anderes auch noch mal danach:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  MS : TMemoryStream;
begin
  //das RichEdit auf dem Form hat einen langen text
  //von diesem wird ein Teil fett geschrieben
  RichEdit1.SelStart := 30;
  RichEdit1.SelLength := 100;
  RichEdit1.SelAttributes.Style := [fsBold];

  MS := TMemoryStream.Create;
  //der Inhalt des RichEdits wird in einen Stream gespeichert
  RichEdit1.Lines.SaveToStream(MS);
  //die Position im Stream muss auf 0 gesetzt werden, damit der Inhalt von Anfang an ausgelesen wird
  MS.Position := 0;
  //der Inhalt des Streams wird in den RichText des QuickReport geladen
  QRRichText1.Lines.LoadFromStream(MS);
  MS.Free;
end;
Anstatt die Formatierung des Textes aus einem RichEdit zu nehmen kann auch ein Text direkt in den Stream geladen werden (so wie auch in dem oben angehängten Beispiel).
Dann wird per \b \b- der Text Fett geschrieben. Um den Text herum müssen {} Klammern sein. Zeilenumbrüche werden mit \par umgesetzt.

Imsgesamt gesagt ist deine Lösung eine Umfassendere, die für mehr Fälle zutrifft, und daher schwerer zu verstehen (besonders ohne Kommentare). Anscheinend ist das auch eine übliche Lösung, da ich sie auch auf anderen Seiten gefunden habe...

Aber sie hat mich auf den richtigen Weg gebracht
  Mit Zitat antworten Zitat