Ubuntu 22.04(XFCE)系统中Unicode字符显示为十六进制框的问题求助
兄弟,我懂你这种折腾完字体反而出更糟问题的崩溃感!之前你为了修复LibreOffice字体显示异常试了个方案,结果字符全变方块,重置后虽然方块没了,但Unicode字符又变成十六进制框,撤销之前的操作也没用对吧?我给你几个实际可操作的排查方向,你挨个试试:
检查并清理异常字体配置文件
之前的操作大概率不小心改了系统字体配置。你可以先去/etc/fonts/conf.d/目录看看,有没有你操作后新增的.conf文件——尤其是那种强制替换字体的配置,直接删掉它,然后刷新字体缓存:fc-cache -fv彻底重建字体缓存
字体缓存损坏是这类问题的常见诱因,执行下面这串命令彻底清掉旧缓存重建:sudo fc-cache -r -v rm -rf ~/.cache/fontconfig/ fc-cache -fv切换XFCE默认字体为Unicode友好型
打开XFCE的「字体」设置面板,把默认字体换成Noto Sans系列(这个字体对各种Unicode字符支持拉满),应用设置后重启所有出问题的程序,看看有没有改善。重置LibreOffice的字体相关配置
说不定是LibreOffice的配置残留搞的鬼,先备份好你重要的自定义设置,然后执行rm -rf ~/.config/libreoffice/重置配置,再打开LibreOffice看看Unicode字符能不能正常显示。确认系统语言区域编码
打开XFCE的「语言支持」面板,确保系统区域设置是UTF-8编码(比如en_US.UTF-8或者zh_CN.UTF-8),非UTF-8编码很容易导致Unicode字符显示异常。
如果以上方法都没解决,你可以把之前执行的那个出问题的修复命令贴出来,或者给个异常字符的截图,这样能更精准地定位问题~
备注:内容来源于stack exchange,提问作者Cobradabest

