让 Vista 字体查看器显示中文字符预览
2007-08-17
总的来说, Vista 的字体查看器和 XP 的并没有太大区别, 只是将头部的字体信息部分显示方式做了一点修改. 但 Vista 字体查看器的本地化工作明显没有做够, 居然无法显示中文字符的预览, 无论什么语言的字体都会显示出 "The quick brown fox jumps over the lazy dog. 1234567890" 这一句, 而且还有一些中文字体无法显示出其中文名称. 如果平时不和这些字体打交到倒也没什么, 但对于有这部分需求的人总不能找到字体后都先安装到系统中再用其它软件查看效果吧. 今天正巧需要找几个字体, 这个 Bug 可把我惹毛了, 研究了一下, 还真的有解决办法.
首先我想到用 XP 中的 fontview.exe 文件替换掉 Vista 的, 成功. 但文件毕竟是 XP 的, 不知道会不会引发其它问题. 于是用 Restorator 2007 打开 XP 的 fontview.exe , 发现有一个"信息表"资源, 一堆16进制编码, 不过从右侧的预览可以看出这部分的确包含字体预览窗格中的文字. 再打开 Vista 的文件, 没有"信息表"资源, 想必是在它的 mui 中, 用 XP 的"信息表"替换掉 Vista 的. 随便找一个字体打开, 没有出错, 不过文字显示位置全部错乱, 比如窗口左上角的"打印"变成了我们苦苦寻找的 "Windows 中文字型范例 1234567890", 看来对应关系不太一样, 于是导出 Vista 的"信息表", 使用16进制编辑软件打开想手动修改, 不过软件貌似不支持将字符替换为中文, 于是又搜中文转16进制码的东西. 自认为修改完成后想要替换回 mui 文件时, 手一抖将 mui 文件拖拽到了 ResHacker 的图标上, 不看不知道, 一看...原来 ResHacker 可以直接对"信息表"资源进行修改 (ResHacker 称之为"消息表"), 晕...费了我半天劲...于是直接修改完毕, 顺便还汉化了2个微软没有翻译的地方. 保存, 试验成功. 这样以后就可以直接查看该字体中文字符的样式了, 不过某些字体无法显示中文名称的问题还是没有解决 (如果你认为这一点很重要那么就使用 XP 的 fontview.exe 吧).
下面是对比图, 上为 Vista 默认状态, 下为修改 mui 后的效果.

首先取得 %SystemRoot%\System32\zh-CN\fontview.exe.mui 文件的控制权限, 然后点击这里下载修改后的 mui 文件, 解压后替换原文件即可.
Support me, You just need to click on the AD below, Thanks.
Comments
我按你的方法弄好了
- -.
(2008-12-12 14:28:59)
恩..加到模板里的...
每篇日志都添加不是要累死...
申请 Google Adsense 成功否和填写的空间地址关系不大, Google 不可能去真正审视你的空间...
比如我的 Adsense 帐号申请的时候用的是一个 Sohu Blog 地址, 但是后来我才发现 Sohu 不支持 Adsense 的代码...
按照 Adsense 的广告添加向导一步一步来定制自己想要的广告样式, 最后给出你几行代码, 粘贴到模板相应位置就好了.
(2007-08-26 10:16:11)
额.谢喽
(2007-08-25 10:05:37)
不过有那功夫还是用xp的替换了~反正一个fontview也没有太多影响~
恩恩.
微软的问题, 他自己解决去.
(2007-08-24 10:35:42)
THX!
(2007-08-23 16:38:19)
我发现了 路过
MAC装上了 分享一下经验啊
字体制作不会,,,,,
看了你的这教程也不会。。。。。。
不是制作字体 |||
是字体的预览程序...
(2007-08-18 09:13:03)
Type a Comment
Smilies
PureAir
posted on 2009-06-14 12:51:11
虽然它确实是opentype字体,但是很多只支持Truetype的软件还是可以调用这样的Opentype字的
根本就不是那个意思嘛...
(2009-06-14 14:50:56)