C# 응용 프로그램에서 앤티 엘리 어싱 된 글꼴을 사용하고 싶습니다. 나는 각 양식의 Paint 이벤트와 함께 할 수있는 방법을 here 읽고 : 우리는 아직 많은 형태를 가지고 있기 때문에전체 응용 프로그램에 TextRenderingHint를 사용하도록 설정할 수 있습니까?
public class SmoothingFonts : System.Windows.Forms.Form
{
...
private void InitializeComponent()
{
...
this.Paint += this.SmoothingFonts_Paint;
}
private void SmoothingFonts_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
{
Font TextFont = new Font("Verdana", 25, FontStyle.Italic);
e.Graphics.TextRenderingHint = TextRenderingHint.ClearTypeGridFit;
e.Graphics.DrawString("Sample Text", TextFont, Brushes.Black, 20, 150);
}
}
이 성가신 얻을 수 있습니다. 또한 모든 양식에서 우리는 여러 양식 유형을 사용합니다. TextRenderingHint
의 설정을 전 세계적으로 설정할 수 있습니까?
EDIT 1
이 예제는이 같은 제대로 오래된 nobugz가 가리키는 것 그겁니다, 인용 최고의 TextRenderingHint
이 시스템에 사용되는 것을 깨닫게 도와주었습니다 AntiAliasGridFit
입니다. 하드웨어 플랫폼이 닫혀 있으므로이 시스템에 가장 적합한 구성이 응용 프로그램이 배포 될 모든 시스템에 가장 적합하다는 것을 확신 할 수 있습니다.
어디서나 TextRenderingHint
의 기본 설정을 적용 할 수 있습니까? Windows Embedded Standard (이전 Windows XP Embedded) 이미지에서 응용 프로그램을 실행하고 있습니다.
편집 2
은 내가 XP 시스템에서 레지스트리에 의해 기본적으로 사용 TextRenderingHint
의 유형을 설정할 수있는 것을 발견했다. 신청서에 의한 은 아니지만, 사용자 방법에 의한 입니다. 레지스트리 키는 다음과 같습니다.
HKCU\Control Panel\Desktop\FontSmoothing {2 for activating font smoothing}
HKCU\Control Panel\Desktop\FontSmoothingType {1 for Antialiasing, 2 for ClearType}
감사합니다.
정보 주셔서 감사합니다. 내 시스템에서 ClearType을 설정하면 글꼴이 정상적으로 표시된다는 것을 알고 있습니다. 그걸 할 수있는 어떤 지점? – yeyeyerman
잘 모르지만 운영 체제에 대해 설명하지 않았습니다. ClearType은 적어도 XP 이후로 오랫동안 사용 가능했습니다. 사용 설정에 대해 질문이 있으면 superuser.com을 사용해보십시오. –
어떻게 기본'TextRenderHint'를'AntiAliasGridFit'으로 설정할 수 있습니까? – yeyeyerman