要求:
1,输出的文字在矩形中央,不能超过矩形区域.
2,输入的文字字体为宋体. 应该是将矩形将最小边长,折算为正方形,在该正方形内输出文本吧.
因为汉字都是方块字. 要输出多大的字体才合适呢?怎么进行精确计算. 要求:
1,输出的文字在矩形中央,不能超过矩形区域.
2,输入的文字字体为宋体. 应该是将矩形将最小边长,折算为正方形,在该正方形内输出文本吧.
因为汉字都是方块字. 要输出多大的字体才合适呢?怎么进行精确计算.
1,输出的文字在矩形中央,不能超过矩形区域.
2,输入的文字字体为宋体. 应该是将矩形将最小边长,折算为正方形,在该正方形内输出文本吧.
因为汉字都是方块字. 要输出多大的字体才合适呢?怎么进行精确计算. 要求:
1,输出的文字在矩形中央,不能超过矩形区域.
2,输入的文字字体为宋体. 应该是将矩形将最小边长,折算为正方形,在该正方形内输出文本吧.
因为汉字都是方块字. 要输出多大的字体才合适呢?怎么进行精确计算.
Graphics.MeasureString
Canvas.TextHeight()
Canvas.TextWidth()
和Label1控件,
你在Label1控件中输入文字
Label1.alignment:=tacenter;
label1.autosize:=true;
label1.Width :=label1.Height ;
bevel1.height:=label1.height+4;
bevel1.width:=label1.width+4;
bevel1.top:=label1.top-2;
bevel1.left:=label1.left-2;
你可以试试,这样就可以让文字在中间了。
的说法,我试了还不错。
LogFont: TLogFont;
hOldFont, hNewFont: HFont;
begin
GetObject(Canvas.Font.Handle,SizeOf(LogFont),Addr(LogFont));
LogFont.lfHeight := 30;
LogFont.lfWidth := 20;
hNewFont := CreateFontIndirect(LogFont);
hOldFont := SelectObject(Canvas.Handle,hNewFont);
Canvas.TextOut(20 , 20, 'This is a test string');
hNewFont := SelectObject(Canvas.Handle,hOldFont);
DeleteObject(hNewFont);
end;