查看文章 |
如何让Fetion使用微软雅黑字体
2007年09月19日 16:53
作者:nathan 微软雅黑字体确实很漂亮,可飞信的界面上不能使用,结果它在换成雅黑字体的XP中鸡立鹤群,特别难看,哈哈。如何让Fetion去使用微软雅黑字体呢?软件没提供设置功能,又不老老实实地用Windows指定的字体,那就只有用ilasm/ildasm来直接修改Fetion程序了。 要修改文件是:FetionFx.exe和ImpsControls.dll: 一、ImpsControls.dll,FetionFx.exe中 1.搜索”Microsoft Sans Seif“、改为"Microsoft Yahei",大小由8.25改为9.25。其实把ImpsControls.dll中的这一唯一的地方修改完了的话,大部分地方就是雅黑了,因为这里修改的是控件的一个基类,不过呢,还是有其它控件没用这个基类,我们不管三七二十一还是全修改了算了。 2.搜索"SimSun"、"Arial",改为"Microsoft Yahei" 3.搜索bytearray (8B 5B 53 4F ) 改为bytearray (AE 5F 6F 8F C5 96 D1 9E ) 。这是unicode的"宋体"换成"微软雅黑"。其实直接换成"Microsoft Yahei"也成。 以上步骤之后,就全变成雅黑字体了,但一运行会发现很多窗口和控件都变大了,晕死。这是.Net Framework的控件进行了Autoscale的原因,所以我们还要调整一些地方的autoscale。 二、缩放问题 1.FetionFx.exe中ConversationWindow::InitializeComponent中,将AutoScaleMode由Font改为None 2.FetionFx.exe中MainForm::InitializeComponent中,将AutoScaleMode由Font改为None 3.FetionFx.exe中OptionsForm::InitializeComponent中,将AutoScaleDimensions由6,13改为6,16 4.FetionFx.exe中SendRequestForm::InitializeComponent中,将AutoScaleDimensions由6,13改为6,16 5.ContactInfoControl::InitializeComponent,将AutoScaleMode由Font改为None 6.BUserInfoControl::InitializeComponent,将AutoScaleMode由Font改为None 这就行了。这里有一个修改的,版本是现在的最新版2.3.0210,点这里下载。 直接在注册表中修改那几个字体的FontLink行吗?忘了,印象中显示出来会比较难看。 |
最近读者: