본문 바로가기

.NET/WinForm

[WinForm] RichTextBox의 글꼴이 자동으로 변경될 때

RichTextBox에서 한글과 영어를 번갈아 입력하다 보면 처음 설정한 글꼴과 다른 글꼴로 멋대로 변경되는 것을 볼 수 있다.

 

RichTextBox의 LanguageOption 속성에 의해 글꼴의 배율이 조정되면서 글꼴이 변경되는 것으로 추정된다.

RichTextBox.LanguageOption의 기본값은 RichTextBoxLanguageOptions.AutoFontSizeAdjust이며, 이 옵션으로 인해 한글 글꼴이 영어 글꼴보다 약간 크므로 글꼴의 크기를 일관적으로 보여주기 위해 영어 글꼴을 Arial로 변경하는 것 같다.

 

따라서 아래와 같이 폼의 생성자 등에서 RichTextBox를 사용하기 전에 LanguagaOption을 변경하고 사용하자.

public partial class Form1 : Form
{
	public Form1()
    {
    	InitializeComponent();
        
    	richTextBox1.LanguageOption = 0;
    }
}