(Moderator)
Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
Delphi 2007 Enterprise
|
Re: Canvas, Vertikaler Text
8. Dez 2005, 20:24
Hier:
Delphi-Quellcode:
Procedure VerticalText(Rotation, x, y: Integer; aText: String; aCanvas: TCanvas);
Var
aFt: LOGFONT;
hOldFont: THandle;
Begin
hOldFont := aCanvas.Font.Handle;
Try
aCanvas.Font.Name :='Arial'; // Muss TrueType sein
GetObject(aCanvas.Font.Handle, SizeOf(aFt), @Aft);
aFt.lfEscapement := 10 * Rotation; // Rotate ist der Winkel in Grad
aFt.lfOrientation := aft.lfEscapement;
aFt.lfQuality := ANTIALIASED_QUALITY;
aCanvas.Font.Handle := CreateFontIndirect(aFt);
aCanvas.TextOut(x, y, aText);
Finally
DeleteObject(aCanvas.Font.Handle);
aCanvas.Font.Handle := hOldFont;
End;
End;
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
|
|
Zitat
|