这个问题,不仅仅是Krypton Suite特有,所有只要使用到Windows 系统字体的程序都会碰上。

设置字体在这里设置:

fontsizes

注意上图,在我的机器上,出现了一个XP的BUG,图形的现实不正确,呵呵。下面的fontsize就是调整字体大小的地方,我的老丈人喜欢放在最大,我一般都在Normal.

下面是我应用程序在Normal下的运行情况:

fontsize1

布局没有错乱,很好,但是设置成Extra Large之后出现错误了

fontsize2

Label被挤占了,我设置了两个按钮设置字体,函数实现为:

private void kryptonButton1_Click(object sender, EventArgs e)
{
    this.Font = SystemFonts.IconTitleFont;
    show("this.Font = SystemFonts.IconTitleFont;");

}
private void kryptonButton2_Click(object sender, EventArgs e)
{
    this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
    show("Manually set");
}
private void show(string group)
{
    this.kryptonTextBox1.Text +=
        "{" + group + "}"
                 + "\r\n  TXTBOX: " + this.kryptonTextBox1.Font.ToString()
                 + "\r\n  SYSTEM: " + this.Font.ToString()
                 + "\r\n  ICONEM: " + SystemFonts.IconTitleFont
                 + "\r\n\r\n";
}

第一个按钮设置系统的字体,第二个按钮设置自定义的字体,在Normal下这两个按钮貌似没有任何作用,输出文本为:

{Load}
  TXTBOX: [Font: Name=Microsoft Sans Serif, Size=8.25, Units=3, GdiCharSet=134, GdiVerticalFont=False]
  SYSTEM: [Font: Name=Microsoft Sans Serif, Size=8.25, Units=3, GdiCharSet=134, GdiVerticalFont=False]
  ICONEM: [Font: Name=Tahoma, Size=8.25, Units=3, GdiCharSet=1, GdiVerticalFont=False]

{this.Font = SystemFonts.IconTitleFont;}
  TXTBOX: [Font: Name=Tahoma, Size=8.25, Units=3, GdiCharSet=1, GdiVerticalFont=False]
  SYSTEM: [Font: Name=Tahoma, Size=8.25, Units=3, GdiCharSet=1, GdiVerticalFont=False]
  ICONEM: [Font: Name=Tahoma, Size=8.25, Units=3, GdiCharSet=1, GdiVerticalFont=False]

{Manually set}
  TXTBOX: [Font: Name=Tahoma, Size=8.25, Units=3, GdiCharSet=0, GdiVerticalFont=False]
  SYSTEM: [Font: Name=Tahoma, Size=8.25, Units=3, GdiCharSet=0, GdiVerticalFont=False]
  ICONEM: [Font: Name=Tahoma, Size=8.25, Units=3, GdiCharSet=1, GdiVerticalFont=False]

在Extra Large模式下输出:

{Load}
  TXTBOX: [Font: Name=Microsoft Sans Serif, Size=8.25, Units=3, GdiCharSet=134, GdiVerticalFont=False]
  SYSTEM: [Font: Name=Microsoft Sans Serif, Size=8.25, Units=3, GdiCharSet=134, GdiVerticalFont=False]
  ICONEM: [Font: Name=Tahoma, Size=12, Units=3, GdiCharSet=1, GdiVerticalFont=False]

{this.Font = SystemFonts.IconTitleFont;}
  TXTBOX: [Font: Name=Tahoma, Size=12, Units=3, GdiCharSet=1, GdiVerticalFont=False]
  SYSTEM: [Font: Name=Tahoma, Size=12, Units=3, GdiCharSet=1, GdiVerticalFont=False]
  ICONEM: [Font: Name=Tahoma, Size=12, Units=3, GdiCharSet=1, GdiVerticalFont=False]

{Manually set}
  TXTBOX: [Font: Name=Tahoma, Size=8.25, Units=3, GdiCharSet=0, GdiVerticalFont=False]
  SYSTEM: [Font: Name=Tahoma, Size=8.25, Units=3, GdiCharSet=0, GdiVerticalFont=False]
  ICONEM: [Font: Name=Tahoma, Size=12, Units=3, GdiCharSet=1, GdiVerticalFont=False]

按下第一个按钮

fontsize3iconfont

窗口变大了,但是现实正确了

第二个按钮:

fontsize4menu 

 

窗口也变大了,但是字体设置问题依旧。

结论:

this.Font = SystemFonts.IconTitleFont;


Jeason Zhao (沈胜衣,斛律光) ------雪饮再现,一个人的江湖
我知道我是谁,我是沈胜衣,默默的活着,就像空气。