给你一个函数
////////////////////////////////
// 打印输出旋转字体角度的字符
////////////////////////////////
procedure print_AngleTextOut(htimage:Tprinter;
sText: String;
x, y, angle,font_h,font_w:integer);
//procedure print_AngleTextOut(htimage:Timage;
sText: String;
x, y, angle,font_h,font_w:integer);
var
LogFont: TLogFont;
SaveFont: TFont;
begin
SaveFont := TFont.Create;
SaveFont.Assign(htimage.Canvas.Font);
GetObject(SaveFont.Handle, sizeof(TLogFont), @LogFont);
with LogFontdo
begin
lfHeight :=font_h;
lfWidth :=font_w;
lfEscapement := angle *10;
lfPitchAndFamily := FIXED_PITCH or FF_DONTCARE;
lfFaceName:='宋体';//'幼圆';
lfWeight:=700;//指定范围为从0至1000的字体加重程度
end;
{with}
htimage.Canvas.Font.Handle := CreateFontIndirect(LogFont);
SetBkMode(htimage.Canvas.Handle, TRANSPARENT);
htimage.Canvas.TextOut(x, y, sText);
htimage.Canvas.Font.Assign(SaveFont);
SaveFont.Free;
end;