您好 电脑先生工作室 ,
你这次的反馈(所有测试全是 X,连最小测试点都不可见)说明:问题已经超出“字形被裁剪”范畴,而是“EUDC 根本没有被正常加载 / 写入 / 链接”。我们现在把排查目标改为找出是哪一层阻断:策略、文件损坏、权限、区域/语言配置或用户配置损坏。请按下面顺序执行;只要某一步出现“可见/恢复”就可以先停并汇报。
一、请首先补齐关键信息(目前缺失导致我们无法精确定位)
- winver 完整版本号(形如 23H2 / OS Build x.x.x.x)。
- 是否安装了“简体中文”语言包(设置 > 时间和语言 > 语言与区域;若系统 UI 改成纯英文 + 未装 CJK 语言包,某些 EUDC 加载路径会被跳过)。
- 注册表策略:
• HKLM\SOFTWARE\Policies\Microsoft\Windows\System 下是否存在 DisableEUDC(数值?0 / 1)。
- C:\Windows\Fonts\EUDC.TTE:文件大小(字节)+ 修改日期时间。
- 你在 eudcedit 里“保存一个新大块字形”后,这个文件的“修改时间”是否即时刷新。若不刷新 → 保存失败或写入被重定向。
- 新建“本地(离线)”用户测试:新账号中创建一个巨大实心块(U+E000),在记事本能否看到。结果是:显示 / 不显示。
- (如果能)把当前 EUDC.TTE 复制一份到桌面,确认可复制(排除访问被阻止)。
二、基础核对(定位“EUDC 是否被禁用”)
- 若 DisableEUDC = 1 → 改为 0(或删除该值)→ 注销重登。
- 组策略(如果是专业版/企业版):本地组策略编辑器中查看
计算机配置 > 管理模板 > 系统
是否有“关闭用户定义字符 (EUDC)”或类似项被启用;如启用请设为“未配置”或“已禁用”。
- 确保“Windows Font Cache Service” 服务状态为“正在运行”。若已运行,先停止再按后面“强制重建缓存”做一次。
三、强制重建字体缓存与 EUDC.TTE(比之前更彻底)
- 备份当前 EUDC.TTE(改名 EUDC_backup.TTE)。
- 停止字体缓存服务。
- 删除:
• %WinDir%\ServiceProfiles\LocalService\AppData\Local\FontCache*.dat
• (若存在)%LocalAppData%\Microsoft\Windows\FontCache 或 FontsCache 目录
- 删除(或改名)原 C:\Windows\Fonts\EUDC.TTE 之后,启动 eudcedit → 这会生成一个全新的、很小的 EUDC.TTE。
- 立即画一个“占据中间 70% 区域的粗黑方块”并保存。
- 再看该新 EUDC.TTE 的“修改时间与大小”是否增长( > 8~10 KB )。如果大小未变化,说明写入根本没成功(权限或虚拟化)。
• 试一次“右键以管理员身份运行 eudcedit.exe”再保存。
四、验证“写入”和“渲染”哪一环出问题
- 如果文件大小在保存后明显增加,但在记事本仍不可见 → 渲染/加载被拦。
- 如果文件始终不变 → 编辑器保存失败(权限 / 安全软件 / 防勒索保护阻止写 Fonts 文件)。
• 检查“设置 > 隐私和安全性 > Windows 安全中心 > 病毒和威胁防护 > 勒索软件防护”是否开启“受控文件夹访问”,暂时关闭再试。
五、确认是否真在写“Unicode 模式”对应的同一个文件
- 你截图里显示“字形集: Unicode”。请在 eudcedit 顶部切换到“全部”再回到“Unicode”,防止界面显示而内部没有切换。
- 在保存后,使用“复制字符”对话框确认当前码位(例如 E000 / E02C),粘贴到记事本。如果粘贴是一个空白方框/完全空 → 说明系统没有给该 PUA 分配字形。
六、差异性对照(快速拉出“是否系统级”)
- 若“新建本地用户”可以正常看到新画的方块:问题在你原账号(HKCU\EUDC 下的配置或用户 FontCache 损坏)。这时导出 HKCU\EUDC,删除该键(先备份),重启再试。
- 若新账号同样不可见:全局策略/系统组件层面。继续往下做。
七、深入(可选但有力)
- 使用 FontForge 打开新生成的 EUDC.TTE:
• 找到 U+E000(或你用的码位),看它是否有轮廓坐标。如果完全空白(轮廓数 0),说明 eudcedit 未写入。
- (可选)用 Process Monitor (ProcMon) 过滤 eudcedit.exe → 保存时是否有“ACCESS DENIED” 针对 EUDC.TTE。
- 检查是否安装了任何字体管理、系统美化、输入法(特别是第三方叠加层)在重装后新加的。暂时全部退出或安全模式下测试 eudcedit + 记事本。
八、临时绕过方案(确保你能继续制作内容)
如果短期内确认系统 EUDC 管线损坏但你需要立即使用自定义字符,可走:
- FontForge 新建字体 → 在 PUA(E000 开始)添加你的图形 → 生成 OTF/TTF → 安装 → 直接在应用中选该字体使用。
- 继续收集上述系统数据,后续我们再判断是否需要通过 DISM / SFC 或就近的系统修复 / 反馈中心提交。
九、请优先回复(最小必要集)
• winver 版本号与 OS Build
• DisableEUDC 值
• 语言包:是否安装“简体中文(中国)”
• 新建空白 EUDC.TTE 后首次保存的大方块:文件大小是否变化(给出大小)
• 新建本地用户结果
• 是否启用了受控文件夹访问 / 其他安全拦截
• (若可)FontForge 里该码位是否有轮廓
这些信息一到,我们能快速把范围缩到“策略 / 权限 / 文件损坏 / 平台回退”。
不要再纠结那些微小点“看不见”——现在核心是确认:系统到底有没有把你画的任何东西写进 EUDC.TTE,还是写进了但加载层被阻断。只要确认是哪一层,我们就能给出针对性的最终修复或明确必须走自定义字体路线。
希望这能帮到你。