Einzelnen Beitrag anzeigen

Benutzerbild von cs.rumpelstilzchen
cs.rumpelstilzchen

Registriert seit: 16. Sep 2004
Ort: NRW
72 Beiträge
 
Delphi XE4 Professional
 
#1

Rave Text Font zur Laufzeit zuweisen

  Alt 2. Mär 2006, 16:51
Hallo Forum!

Ich habe mal wieder ein kleines Problem mit Rave!

Ich möchte Text mit zur Laufzeit selbst generierten Fonts erzeugen. Die Fonts erzeuge ich so:
Delphi-Quellcode:
  
MyFont := TFont.Create;
MyFont.Handle := Windows.CreateFont(24, 10, 0, 0, FW_BOLD, 0, 0, 0,
                               ANSI_CHARSET, OUT_DEFAULT_PRECIS,
                               CLIP_DEFAULT_PRECIS, ANTIALIASED_QUALITY,
                               FIXED_PITCH + FF_MODERN, 'Courier New');
Dann weise ich sie z.B. den Edit-Feldern auf dem Formular zu:
  Edit1.Font.Assign(MyFont); Das Edit-Objekt benutzt daraufhin den Font völlig Problemlos.

Nun weise ich den Text-Objekten im Rave-Report die gleichen Fonts zu:
Delphi-Quellcode:
    MyPage := FindRaveComponent('Report1.Page1',nil) as TRavePage;
    if MyPage <> nil then
    begin
      MyRaveText := FindRaveComponent('DataText1',MyPage) as TRaveText;
      if MyRaveText <> nil then
        MyRaveText.Font.Assign(MyFont);
Wenn ich den Report nun ausführe, erhalte ich zwar Texte mit einem Font aus der angegebenen Familie (hier: 'Courier New'), aber nicht annähernd das, was die Edit-Felder auf dem Formular zeigen !!

Das überrascht mich ehrlich gesagt ein wenig. Ich dachte Rave benutzt auch nur Windows-API-Funktionen um Text darzustellen.

Ich lege mal ne Zip-Datei des Beispielprojektes bei.

Ich benutze übrigens
Delphi 2005 Pro mit Rave BE 6.0.1

Und bevor jemand fragt: Ja, es müssen unbedingt diese hässlichen Fonts sein!

Bin für jede Hilfe sehr dankbar!!

So long,
Jürgen
Angehängte Dateien
Dateityp: zip fontest_126.zip (6,1 KB, 6x aufgerufen)
Der weiß, daß er nichts weiß, wie alle anderen auch nichts wissen.
Nur weiß er, was die anderen und auch er selbst noch lernen müssen.
(Novalis 1772 - 1801)
  Mit Zitat antworten Zitat