ak4716261 发表于 2021-2-10 22:42

【大地图中文字体乱码】终极解决办法,实测效果立竿见影。

本帖最后由 ak4716261 于 2021-2-10 23:02 编辑

    时隔半年想回来看看CK3,发现大地图中文字体显示乱码的BUG居然还没有修复,网上也查不到切实有效的解决办法,自己摸索一下,问题终于解决,给需要的朋友分享一下

    问题原理:CK3有十多种不同的文本,每种文本分别要对应十多种语言的字体字库,蠢驴可能嫌麻烦,把字母语系的七八种语言归在一起,方块字语系的汉语韩语这些归在一起,然后在十多种文本后面各复制了一遍。。。,对于字母来说,反正字库小也没关系,但方块字,尤其是汉语字库,容量动辄是字母的几百到几千倍,再加上还要跟韩语那些完全用不到的大字体挂在一块再复制十多遍,导致同时加载数千个中文地名时调用了英文字体几万倍的字体库,造成字体内存超出了蠢驴自己分配给字体的阈值,因此造成乱码。

    解决思路:在官方彻底修复这个问题之前,我们只能手动调整字体文件设置,替换体积较小的中文字库,删去不必要的其他方块字库,最大程度减少字体内存调用负担。

    具体办法:

      1.替换字体。下载steam中文字体美化补丁 https://steamcommunity.com/sharedfiles/filedetails/?id=2216536588该补丁包含了一个小而全的中文字库,不会像出云字体那样图小而省去生僻字造成年人物姓名无法显示,基本上是目前唯一有助于消除乱码的字体库。

      2.调整字库设置。打开Crusader Kings III\game\fonts下的fonts.font文件里搜索 languages = { "l_simp_chinese" } 然后把下一行
files = { "fonts/Noto_Sans_SC/NotoSansSC-Bold.otf" "fonts/Open_Sans/OpenSans-SemiBoldItalic.ttf" "fonts/Korean_fontset/IropkeBatangMI.ttf" } 里面后2个"fonts/Open_Sans/OpenSans-SemiBoldItalic.ttf" "fonts/Korean_fontset/IropkeBatangMI.ttf"删除(注意不要删到大括号)
      接下来手动下翻,大概还有十个左右的languages = { "l_simp_chinese" },重复上一步把每一个后面括号里除了第一个SC字体之外的字体 全部删除!         (必须全部删除,只要留下一个还是迟早还是会显示乱码,而且每个对应的SC字体还不一样,所以不能用替换,只能一个一个手动删)

   麻烦是麻烦了点,但是删了之后你会发现,大地图终于MMD不会像以前一样镜头一拉远就会乱码,而是要拉远几十次才会开始出现乱码;P,这个问题确实无法根治,只能缓解。

zhongxiali 发表于 2021-2-11 08:27

这个牛 新年快乐年后我试试

陌上忆纱 发表于 2021-2-11 11:37

我试试,最近回去玩ck2了

LZFd3DM 发表于 2021-2-11 18:06

地图上有错别字匈牙利
变成羌牙利

FUGjF6 发表于 2021-2-13 23:52

emmm,看看内容{:3_142:}呢。。。

shuyue2 发表于 2021-2-28 18:53

好像很厉害的样子啊,有修改好的fonts.font 文件吗
页: [1]
查看完整版本: 【大地图中文字体乱码】终极解决办法,实测效果立竿见影。