根本原因是系统缺失SimSun、微软雅黑等中文字体导致打印渲染失败;需安装中文语言包并设为显示语言,或手动补全字体文件并重建字体缓存。

Windows 11 打印文档时所有中文显示为方块或乱码,根本原因是打印机驱动调用系统字体失败,而系统本身又缺失 SimSun(宋体)、Microsoft YaHei(微软雅黑)等基础中文字体文件,导致打印渲染链路中断——即使屏幕显示正常,打印输出仍会 fallback 到无字形的占位符号。
确认是否真缺字体而非驱动问题
先排除干扰:打开记事本,输入“测试中文:你好,微软雅黑,宋体”,保存为 .txt 文件,直接双击用记事本打开。若此处已显示方块,则确定是系统级字体缺失;若记事本显示正常但打印出来是方块,说明字体存在但未被打印机驱动正确识别或嵌入。
按 Win + R 输入 shell:fonts 回车,查看窗口中是否存在 【simsun.ttc、msyh.ttc、simhei.ttf、kaiu.ttf】 这四个文件。任一缺失即需补全。
安装中文语言包并设为显示语言(最稳路径)
此操作触发 Windows 自动部署全套中文 UI 字体,并注册进打印子系统,比单独装字体更可靠。
第一步:按 Win + I 打开设置 → 点击左侧“时间和语言” → 右侧点“语言和区域” → 点“添加语言”。
第二步:搜索“中文(简体)”,勾选全部子功能(含语音、手写、OCR),点击“下一步”完成安装。
第三步:安装完成后,在“首选语言”列表中找到“中文(简体,中国)”,点击其右侧“⋯” → 选择“设为 Windows 显示语言”。【跳过此步将导致字体不注入打印渲染链,桌面和文档可能仍乱码】
第四步:系统提示重启时立即执行。重启后,simsun.ttc 等文件会自动出现在 C:\Windows\Fonts 目录中,且打印机驱动可正常调用。
手动补全核心字体文件(离线/企业环境适用)
方法一:从正常 Win10/Win11 设备复制
在另一台字体正常的电脑上,进入 C:\Windows\Fonts,复制以下 6 个文件:simsun.ttc、msyh.ttc、simhei.ttf、kaiu.ttf、simfang.ttf、nsimsun.ttc。
将它们粘贴到当前电脑的 C:\Windows\Fonts 目录(需管理员权限,UAC 提示点“是”)。
方法二:用 PowerShell 批量注册(避免拖放失败)
以管理员身份运行 PowerShell,逐行执行:
Copy-Item "D:\Fonts\simsun.ttc" "$env:windir\Fonts\" -Force
Copy-Item "D:\Fonts\msyh.ttc" "$env:windir\Fonts\" -Force
Copy-Item "D:\Fonts\simhei.ttf" "$env:windir\Fonts\" -Force
注册完成后,无需重启,但需重建字体缓存才能生效——见下一节。
强制重建字体缓存服务
字体文件已存在却仍乱码,大概率是 FontCache 服务缓存损坏,必须清除旧缓存并重启服务。
按 Win + R 输入 services.msc 回车 → 找到“Windows Font Cache Service”,右键“停止”。
按 Win + E 打开资源管理器,在地址栏粘贴:%windir%\ServiceProfiles\LocalService\AppData\Local\FontCache → 全选该文件夹内所有 .dat 文件(如 FontCache3.0.0.dat)→ Delete 彻底删除。
返回服务窗口,右键“Windows Font Cache Service” → “启动”。
最后,重启电脑。这一步不可跳过,否则新字体不会进入打印上下文。


















