atmfd.dll 核心功能与缺失影响
Adobe Type Manager Font Driver · Windows 系统字体驱动模块
一、模块定位
atmfd.dll 全称 Adobe Type Manager Font Driver,通常位于系统 System32 目录,以驱动的形式挂载进图形子系统,是 Windows 解析、渲染 PostScript Type 1 字体(.pfb / .pfm)的专用通道。
二、核心功能
- Type 1 字体解析与加载
读取 .pfb 字形轮廓数据与 .pfm 度量信息,还原字符轮廓、编码表(Encoding)与字体家族信息,并注册到系统字体枚举接口。 - 字形光栅化
将矢量轮廓按目标设备分辨率转换为位图,处理 Hinting、轮廓填充规则与抗锯齿参数,输出屏幕或打印机可用的点阵字形。 - 度量与字距计算
向 GDI 提供字符宽度、字距(Kerning)、行距、基线等排版参数,保障文本断行、对齐与版面计算的准确性。 - GDI 接口转发
实现并转发 GetGlyphOutline、EnumFontFamilies、CreateFontIndirect 等调用,使任意基于 GDI 的程序可透明使用 Type 1 字体。 - 打印与 PostScript 输出支持
与打印子系统协作,将 Type 1 字体以设备无关方式嵌入 PostScript 打印流,保证印刷级输出效果。 - 字体文件安全解析
在内核态处理来源不可信的字体文件,对轮廓指令、表结构长度进行校验,承担字体解析的边界防护职责。
三、缺失或损坏的典型影响
- PostScript Type 1 字体在系统与办公软件中无法显示,文本回退为方框、乱码或空白。
- 依赖该字体的旧版排版、印刷、CAD 类程序在启动或打开文档时直接报错退出。
- 调用
GetGlyphOutline等函数失败,文本测量与排版结果失真,打印任务输出乱码或中途中断。 - 事件查看器中出现模块加载失败、应用程序崩溃相关记录,系统文件校验(SFC)报缺失或哈希不匹配。
- 部分软件的自检机制因系统文件完整性异常而拒绝运行。
- 从第三方站点下载同名文件回填,可能引入被篡改的驱动,带来内核级提权风险(该模块历史上出现过 CVE-2015-0059、CVE-2016-3211 等远程代码执行与提权漏洞)。
说明:自 Windows 10 1903 起,微软已停止对 PostScript Type 1 字体的系统级支持,atmfd.dll 随之弃用,新版系统中不再出现该文件,字体渲染相关工作转移至用户态字体驱动进程。