字体旋转?(50分)

  • 主题发起人 主题发起人 wzf
  • 开始时间 开始时间
W

wzf

Unregistered / Unconfirmed
GUEST, unregistred user!
用LOGFONT生成旋转字体后将新字体
给一MEMO控件,但该MEMO控件中字符
并没有按设计的旋转,只是动了一下
仍是橫着正常显示,将同样的LOGFONT
给IMAGE.CANVAS.FONT然后TEXTOUT则能
按设计输出,为什么?
 
MEmo控件恐怕不能支持显示这么复杂的字体吧。Canvas当然可以了,那是画出来的啊,比Memo
要复杂多了。速度也慢多了。
 
其他控件呢?比如:button,label上的字符呢?
 
用第三方控件吧。。。好方便的。。。BUPACK啊。。。
 
我主要是想知道控件中字体到底怎么生成?
象WORD中一样设置斜线表头
 
check the source code of Raize
 
各位大侠,指点一下!!!
 
var
lfont:TLogFont;
begin
with lfontdo
begin
lfHeight := AFont.Size;
lfWidth := 0;
lfEscapement := Round(AFont.Rotation*10);
lfWeight := 0;
lfItalic := 0;
lfUnderline := 0;
lfStrikeOut := 0;
lfCharSet := 1;
lfOutPrecision := OUT_TT_PRECIS;
lfClipPrecision:= CLIP_DEFAULT_PRECIS;
lfQuality := PROOF_QUALITY;
lfPitchAndFamily := DEFAULT_PITCH;
lfOrientation:=Round(AFont.Rotation*10);
StrPCopy(lfFaceName,AFont.FontName);
end;
把这个Font选中DC中就可以画出你想要的字体了,上面的属性按照你的要求改,包括旋转等.
 
用LOGFONT生成旋转字体已实现,关键是
将新字体用在MEMO控件或其他DELPHI控件中
用canvas.textout可以,
>>把这个Font选中DC中就可以画出你想要的字
怎样用到memo中?
 
Memo恐怕不行,因为Memo没有Canvas属性,不能画出东西.自已写一个吧.
 
只好如此了。谢谢各位!!!
 

Similar threads

回复
0
查看
848
不得闲
D
回复
0
查看
825
DelphiTeacher的专栏
D
D
回复
0
查看
831
DelphiTeacher的专栏
D
后退
顶部