본문 바로가기

Delphi/꿀팁

크기에 맞춰 FontSize 자동계산 하기 - 1

간단하게 예제로 Label의 크기에 맞춰 FontSize를 조절해 보겠습니다.

function CalcFontSize(nWidth, nHeight : Integer; sText : string): Integer;

Const MAX_FONT_SIZE = 32; MIN_FONT_SIZE = 2; var I : Integer; begin with TLabel.Create(nil) do begin try Caption := sText; for I := MIN_FONT_SIZE to MAX_FONT_SIZE do begin Width := nWidth; WordWrap := True; AutoSize := True; Font.Size := I; if (Height < nHeight) and (Width < nWidth) then Result := I; end; finally Free; end; end;

end;

var

sText : string;

begin

sText := '가나다라마바사아자차카타파하';


Label1.WordWrap := True;

Label1.Font.Size := CalcFontSize(Label1.Width, Label1.Height, sText);

Label1.Caption := sText;

end;

전)

후)


2019/02/15 - [ - Delphi] - 넓이에 맞춰 FontSize 자동계산 하기 - 2

반응형