반응형

C# WinForm : 문자 픽셀 측정

알게된 배경

 본의 아니게 C#으로 윈도우 기반으로 간단한 프로그램을 작성하다 보니 몇몇은 나중에 다시 찾기 힘들것 같아서 이러한 것들은 기록으로 남긴다.

 문자 픽셀의 길이 경우 윈도우에서 기본적으로 제공하는 Component 를 동적(코드로)으로 작성할 경우 Label 같은 경우 autoSize를 true로 켜도 최종 크기를 size나 width, height에 갱신이 되지 않았었기 때문에 찾은 방법이다.


매서드 원형

SizeF Graphics.MeasureString(String, Font, Int32)

실제로는 앞의 2개의 인자만 있어도 된다.



예제 소스

using System.Window.Form;
using System.Drawing;

class CustumLabel : Label
{
    public CustumLabel(Sting text)
    {
        Text = "Offline";
        var width = Graphics.MeasureString(Text, Font);
        Width = (int)Math.Ceiling(width);
    }
}


위의 소스코드로 당장 변화를 확인 할 수는 없지만, 나머지도 작성하면 길어지므로 일단은 생략한다.


참조자료

MSDN 문서 Graphics.measureString Method



반응형

+ Recent posts