Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Rave Text Font zur Laufzeit zuweisen (https://www.delphipraxis.net/64368-rave-text-font-zur-laufzeit-zuweisen.html)

cs.rumpelstilzchen 2. Mär 2006 16:51


Rave Text Font zur Laufzeit zuweisen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo Forum! :hi:

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:
Delphi-Quellcode:
  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 !! :wall:

Das überrascht mich ehrlich gesagt ein wenig. :gruebel: 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

cs.rumpelstilzchen 8. Mär 2006 11:21

Re: Rave Text Font zur Laufzeit zuweisen
 
:( Hat keiner eine Idee?

Ich hab mal versucht das über Fontmaster hinzubekommen, also den Felder Fonts je eines Fontmasters zuzuordnen. Geht auch nicht! Gleiches Ergebnis! :wall:

HIIIIIIIIIILFEEEEEEEE!!!!

vetterling 9. Mär 2006 21:30

Re: Rave Text Font zur Laufzeit zuweisen
 
Ich weiß nicht, ob Dir das was nützt. Aber haben Fonts auf unterschiedlichen Devices (Bildschirm uind Printer) nicht leicht unterschiedliches Aussehen, wenn Du kein True Type Font erstellst und benutzt. Wenn das so ist versuche es doch mal mit einem slochen Font. Geht's dann ??

cs.rumpelstilzchen 16. Mär 2006 18:10

Re: Rave Text Font zur Laufzeit zuweisen
 
Danke Jungs, danke! Es geht nicht! :wall: Keine Ahnung warum !!??!? :freak:

Aaaaber ist nicht weiter tragisch, hab's :coder2: jetzt mit Rtf gelöst, ist sowieso moderner und bietet mehr Möglichkeiten.

THX
Jürgen


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:19 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz