var
LogFont: TLogFont; //这个类我不熟悉??
theFont: TFont;
begin
with Form1.Canvas do
begin
Font.Name := '宋体';
Font.Size := 18;
Font.Color := clYellow;
theFont := TFont.Create;
theFont.Assign( Font );
GetObject( theFont.Handle, Sizeof(LogFont), @LogFont ); //gettobject不是
LogFont.lfEscapement := 450; // 45度 ?? //加载文件对象吗?
LogFont.lfOrientation := 450; // 45度 ??
theFont.Handle := CreateFontIndirect( LogFont ); //???
Font.Assign( theFont );
theFont.Free;
TextOut( X, Y, 'Hello!' );
end;
end;
该段代码能实现字体的旋转很多地方我搞不懂
请大家指导
LogFont: TLogFont; //这个类我不熟悉??
theFont: TFont;
begin
with Form1.Canvas do
begin
Font.Name := '宋体';
Font.Size := 18;
Font.Color := clYellow;
theFont := TFont.Create;
theFont.Assign( Font );
GetObject( theFont.Handle, Sizeof(LogFont), @LogFont ); //gettobject不是
LogFont.lfEscapement := 450; // 45度 ?? //加载文件对象吗?
LogFont.lfOrientation := 450; // 45度 ??
theFont.Handle := CreateFontIndirect( LogFont ); //???
Font.Assign( theFont );
theFont.Free;
TextOut( X, Y, 'Hello!' );
end;
end;
该段代码能实现字体的旋转很多地方我搞不懂
请大家指导
typedef struct tagLOGFONT { // lf
LONG lfHeight;
LONG lfWidth;
LONG lfEscapement;
LONG lfOrientation;
LONG lfWeight;
BYTE lfItalic;
BYTE lfUnderline;
BYTE lfStrikeOut;
BYTE lfCharSet;
BYTE lfOutPrecision;
BYTE lfClipPrecision;
BYTE lfQuality;
BYTE lfPitchAndFamily;
TCHAR lfFaceName[LF_FACESIZE];
} LOGFONT; 字体在Windows中是图形对象,这里的GetObject是用来返回系统字体的LOGFONT结构
lfEscapement
lfOrientation
的解释已经在SDK中了