방법: 텍스트에 앤티 앨리어싱 사용

앤티앨리어싱은 그려진 그래픽 및 텍스트의 울퉁불퉁한 모서리를 매끄럽게 다듬어 모양과 가독성을 개선하는 것을 말합니다. 관리형 GDI+ 클래스를 사용하면 높은 품질의 앤티앨리어싱된 텍스트와 낮은 품질의 텍스트를 렌더링할 수 있습니다. 일반적으로 더 높은 품질의 렌더링은 낮은 품질의 렌더링보다 처리 시간이 더 많이 걸립니다. 텍스트 품질 수준을 설정하려면 GraphicsTextRenderingHint 속성을 TextRenderingHint 열거의 요소 중 하나로 설정합니다.

예제

다음 코드 예제에서는 두 가지 품질 설정으로 텍스트를 그립니다.

FontFamily fontFamily = new FontFamily("Times New Roman");
Font font = new Font(
   fontFamily,
   32,
   FontStyle.Regular,
   GraphicsUnit.Pixel);
SolidBrush solidBrush = new SolidBrush(Color.FromArgb(255, 0, 0, 255));
string string1 = "SingleBitPerPixel";
string string2 = "AntiAlias";

e.Graphics.TextRenderingHint = TextRenderingHint.SingleBitPerPixel;
e.Graphics.DrawString(string1, font, solidBrush, new PointF(10, 10));

e.Graphics.TextRenderingHint = TextRenderingHint.AntiAlias;
e.Graphics.DrawString(string2, font, solidBrush, new PointF(10, 60));
Dim fontFamily As New FontFamily("Times New Roman")
Dim font As New Font( _
   fontFamily, _
   32, _
   FontStyle.Regular, _
   GraphicsUnit.Pixel)
Dim solidBrush As New SolidBrush(Color.FromArgb(255, 0, 0, 255))
Dim string1 As String = "SingleBitPerPixel"
Dim string2 As String = "AntiAlias"

e.Graphics.TextRenderingHint = TextRenderingHint.SingleBitPerPixel
e.Graphics.DrawString(string1, font, solidBrush, New PointF(10, 10))

e.Graphics.TextRenderingHint = TextRenderingHint.AntiAlias
e.Graphics.DrawString(string2, font, solidBrush, New PointF(10, 60))

다음 그림에서는 예제 코드의 출력을 보여줍니다.

두 가지 다른 품질 설정을 가진 텍스트를 보여주는 스크린샷.

코드 컴파일

앞의 코드 예제는 Windows forms에서 사용하도록 설계되었으며, PaintEventArgse가 필요합니다. 이것은 PaintEventHandler의 매개변수입니다.

참고 항목