+1 800 256 3608 (toll-free in North America) or +49 7531 90 60 10| service@combit.com

Lesbaren Text in DrawUserobj zeichnen


(Guest) #1

Hallo zusammen!

Ich versuche gerade, mit der LL17-VCL-Komponente im OnDrawUserobj-Event eines Bild-Feldes (LL_CMND_DRAW_USEROBJ-API-Callback) Text in lesbarer Größe zu zeichnen und kriege es nicht hin.

Als Beispiel nehme ich mal das “Advanced Example”-Sample. Wenn ich dort LLDrawUserobj so abändere:procedure TForm1.LLDrawUserobj(Sender: TObject; Name, Contents: string; VarType: Integer; VarPointer: Pointer; ContentsHandle: Cardinal; Isotropic: Boolean; Parameters: string; Canvas: TCanvas; var Rect: TRect; PaintMode: TPaintMode); var s: string; r: TRect; SaveIndex: Integer; begin r := Rect; s := 'Hello world!'; DrawText(Canvas.Handle, PChar(s), Length(s), r, DT_SINGLELINE or DT_CENTER or DT_VCENTER); end;
sehe ich zwar zentrierter Text, aber in winzig. Alle möglichen Varianten mit verschiedenen Mapping modes, Aufrufen von LPtoDP etc haben auch nichts gebracht.

Hat da jemand einen Tip (auch auf API-Level) für mich?

Grüße,
Uli.