VML是微软1998–1999年推出的基于XML的矢量图形语言,随IE 5.0集成,用于Office导出网页时保留绘图对象矢量特性;需声明命名空间和behavior,仅IE5–IE8支持,现代浏览器已弃用,被SVG取代。

VML 是 Vector Markup Language(矢量标记语言)的缩写,一种基于 XML 的轻量级矢量图形描述语言,由微软在 1998–1999 年间主导开发,并随 Internet Explorer 5.0 首次集成。它不是 Word 独有的技术,但 Word 在“另存为网页”时会用到 VML 来保留手绘形状、文本框、箭头等 Office 绘图对象的矢量特性,避免转成位图导致模糊或文件膨胀。
VML 的核心作用是:用纯文本(XML 标签)定义图形,让 IE 能原生渲染可缩放、不失真的线条、矩形、椭圆、多边形等,同时支持填充、描边、透明度、脚本交互等。
以下几点帮你快速抓住关键:
不是 Word 专属,而是 IE + Office 共享的底层机制
Word、Excel、PowerPoint 在导出 HTML 时,若启用「依赖 VML」选项(默认开启),就会把用户绘制的形状转为、、等 VML 标签,嵌入 HTML 文件中,而不是生成 PNG/JPEG 图片。-
需要显式声明命名空间和行为
要让浏览器识别 VML,HTML 文档开头必须包含:并在
中注册:v\:* { behavior: url(#default#VML); } 已淘汰,仅限旧环境使用
IE 9 开始弃用 VML,现代浏览器(Chrome/Firefox/Edge)完全不支持。目前仅在维护老旧内网系统、遗留 Word 导出网页、或兼容 IE8 及以下的场景中可能遇到。W3C 最终将 VML 与 PGML 合并演进为 SVG 标准。-
Word 中如何控制 VML 输出
在「文件 → 另存为 → 网页 → 工具 → 网页选项」里,有两项直接相关:- ✅「依赖 VML 在浏览器中显示图形」:勾选后,绘图对象以 VML 代码保留,体积小、不失真,但仅 IE5–IE8 可见;
- ❌「依赖 VML」未勾选:Word 自动把每个形状转为独立图片(如 image001.png),兼容性广,但文件变大、缩放易模糊。
H3 常见 VML 元素示例
-
:矩形 -
:椭圆 -
:圆角矩形 -
:直线段 -
:折线(含points="1,1 10,20 30,5") -
:组合多个图形并统一变换
H3 为什么现在基本不用了
- 所有新版浏览器(包括 Edge Chromium)不解析 VML;
- Word 默认导出格式已转向 HTML5 + SVG 或纯图片方案;
- 微软官方自 2011 年起归档 VML 文档,不再更新;
- 实际开发中,SVG、Canvas 或 CSS 绘图已全面替代。
H3 如果你还在处理含 VML 的 Word 网页
- 不要直接在 Chrome 打开
.htm文件——图形会消失; - 检查是否误启用了「RelyOnVML = True」却面向现代浏览器发布;
- 迁移建议:用 Word 另存为「筛选过的网页(*.mht)」或转 PDF;或用工具(如 Pandoc + custom filter)将 VML 提取为 SVG 路径。
不复杂但容易忽略。










