windows字体问题

windows字体问题(Win7)
1. 乱码
某些Delphi写的软件字体乱码;
区域/语言等全改美国/英语, 然后再改成中国/中文, 3个地方, 以上操作完成后正常

2. 语言标识代码
如中文 0804
#define MAKELANGID(p, s) ((((WORD )(s)) << 10) | (WORD )(p))
0804
#define LANG_CHINESE 0x04
#define SUBLANG_CHINESE_SIMPLIFIED 0x02

0409
#define LANG_ENGLISH 0x09
#define SUBLANG_ENGLISH_US 0x01

3. 字体映射/替代
如: MS Shell Dlg
VS-C++ 的资源字体名:MS Shell Dlg
用GetObject 获取字体名字为 MS Shell Dlg 2
实际中文显示字体为: Tahoma 和 宋体(SimSun)

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes
MS Shell Dlg = Microsoft Sans Serif
MS Shell Dlg 2 = Tahoma

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\FontLink\SystemLink
Microsoft Sans Serif=
SIMSUN.TTC,SimSun
MINGLIU.TTC,PMingLiU
MSGOTHIC.TTC,MS UI Gothic
BATANG.TTC,Batang

Tahoma=
SIMSUN.TTC,SimSun
MINGLIU.TTC,PMingLiU
MSGOTHIC.TTC,MS UI Gothic
BATANG.TTC,Batang

4. FontCreator91 合并字体
a. 打开字体
b. 插入/字符 输入代码点: $3401-$9FBB
c. 打开其他字体, 选择对应代码点范围复制
d. 特殊粘贴
e. 保存/导出字体

5. 宋体字体替换问题
修改雅黑字体名称改成宋体, 然后安装, 发现部分软件正常, 部分还是宋体
原因: 安装时提示覆盖,当实际上并没有覆盖, 因为注册的名称不一样
原始的名字: 宋体和新宋体
新的名字: 宋体

 6. 宋体12号字无法开启ClearType, 因为字体本身设置了不支持大小, 当字体太小时实际使用的是直接贴图,

贴图数据可以从FontCreator的 字体-属性-未支持表 中看到, 删除这些数据可以开启ClearType, 但是效果不会太好

posted @   Yofoo  阅读(160)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能
点击右上角即可分享
微信分享提示