Einzelnen Beitrag anzeigen

Jörgi

Registriert seit: 26. Apr 2016
7 Beiträge
 
#1

Fontveränderung bei Resize

  Alt 26. Apr 2016, 10:14
Hallo Liebe Gemeinde,

ich habe mich extra angemeldet wegen folgendem Problem, was ich nicht nachvollziehen kann...

Ich benutze Delphi 5

Ich lasse mir an der Y-Achse einen gedrehten Text ausgeben mit folgender Prozedur:

Delphi-Quellcode:
procedure TextOutAngle(const Canvas: TCanvas; X, Y: Integer; const AText: string; AAngle: Integer);
  var
    hcurFont: HFONT;
    LogFont: TLogFont; // Windows native Font-Struktur
  begin
    with Canvas do
    begin
      hCurFont := Font.Handle;
      try
        GetObject(Font.Handle, SizeOf(LogFont), @LogFont);
        LogFont.lfEscapement := 10*AAngle;
        LogFont.lfOrientation := Logfont.lfEscapement;
        canvas.Font.Handle := CreateFontIndirect(LogFont);
        try
          TextOut(X, Y, AText);
        finally
          DeleteObject(Font.Handle);
        end;
      finally
        Font.Handle := hCurFont;
      end;
    end;
  end;
Klappt auch soweit ganz gut...
Ziehe ich meine Grafik jetzt größer, dann verändert sich der Font.
Und nicht nur der vom gedrehten Text, sondern alle.

Hat jemand eine Idee ?

Viele Grüße,

Jörg
Miniaturansicht angehängter Grafiken
vorher.jpg   nachher.jpg  

Geändert von Jörgi (26. Apr 2016 um 11:40 Uhr)
  Mit Zitat antworten Zitat