我不知道,但如果可能的话,我怎样才能部分更改Tlabel字体大小?
我想要的是什么:
这是我的代码:
var
lbl : TLabel;
str : String;
begin
str:= 'HELLO WORLD';
lbl.Text:= str;
end;
请不要建议使用2个标签合并它,我必须使用一个标签,但我找不到如何逐个改变字符大小或颜色?
答案 0 :(得分:2)
标准TLabel不允许使用不同的字体。第三方组件包中有一些这样的组件(任意示例 - 来自TMS的TRTFLabel)。
但是你可以使用例如小TImage
,并在其上Canvas
使用不同的样式绘制文本(失去一些TLabel可能性,如自动调整大小)。
var
w, h: Integer;
begin
Image1.Canvas.Font.Size := 12;
h := Image1.Canvas.Font.Height; // in pixels
Image1.Canvas.TextOut(0, 20 + h, 'Big');
w := Image1.Canvas.TextWidth('Big');
Image1.Canvas.Font.Size := 8;
h := Image1.Canvas.Font.Height; // in pixels
Image1.Canvas.Font.Style := Image1.Canvas.Font.Style + [fsBold];
Image1.Canvas.TextOut(W, 20 + h, 'SmallBold');