Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#6

Re: gedrehter Text verändert Font

  Alt 13. Jan 2009, 12:18
in D2009 geht es auch so (ich weiß nur nicht ab wann .Orientation in TFont drin ist ... D7 kennt es noch nicht)

Delphi-Quellcode:
Procedure TextOutAngle(const Canvas: TCanvas; X, Y: Integer;
  const AText: string; AAngle: Integer);

var
  OldOrientation: Integer;

begin
  OldOrientation := Canvas.Font.Orientation;
  Canvas.Font.Orientation := AAngle;
  Canvas.TextOut(x, y, AText);
  Canvas.Font.Orientation := OldOrientation;
end;


// oder


Procedure TextOutAngle(const Canvas: TCanvas; X, Y: Integer;
  const AText: string; AAngle: Integer);

var
  OldFont: TFont;

begin
  OldFont := TFont.Create;
  Try
    OldFont.Assign(Canvas.Font);
    Canvas.Font.Orientation := AAngle;
    // hier ließe sich dann noch mehr ändern und es würde auch wieder zurückgesetzt
    Canvas.TextOut(x, y, AText);
  Finally
    Canvas.Font.Assign(OldFont);
    OldFont.Free;
  End;
end;

Warum der Fehler bei dir auftritt, weiß ich nicht, aber eventuell gibt eine Zuweisung auf Font.Handle das alte Handle frei
$2B or not $2B
  Mit Zitat antworten Zitat