Windows 中繼檔 (.wmf)

[MS-WMF]: 標準

Windows Metafile (WMF) 是微軟的傳統 16 位元向量與點陣容器格式,於 Windows 3.0 時代設計,用於在 Windows 應用程式之間共用可縮放的美工圖案與圖形。

將 WMF 轉換為 SVG

免費的瀏覽器端 WMF 轉 SVG 轉換器。在您的裝置上即時轉換檔案。

檢查與中繼資料

作業系統與檔案分析工具透過檢查開頭的二進位位元組序列來識別 WMF 檔案:

在這裡選擇或拖放檔案

私密 - 檔案絕不會離開您的裝置

或貼上 Ctrl+V
零網路傳輸隱私保證: 0 位元組上傳至外部伺服器。所有處理皆在本機瀏覽器沙箱中進行。

位元組層級標頭簽章(檔案簽章)

作業系統與檔案分析工具透過檢查開頭的二進位位元組序列來識別 WMF 檔案:

十六進位簽章(偏移量 0):

D7 CD C6 9A / 01 00 09 00

ASCII 表示法: ×ÍÆš / ....

標準化: [MS-WMF]: Windows Metafile Format Specification

技術規格

容器架構16 位元 GDI 中繼檔記錄,選擇性地在前方加上 22 位元組的 Aldus 可置入標頭
壓縮未壓縮的 16 位元向量與點陣繪圖指令記錄
位元組序小端序(Intel x86)
色彩空間裝置相依 RGB
色版與結構向量路徑、多邊形、文字字串,以及內嵌的 16 位元或 24 位元 DIB 點陣圖
最大尺寸16 位元整數座標空間(-32,768 至 +32,767 單位)
透明度二進位點陣運算(ROP2)透明度遮罩
串流與漸進式依序播放記錄,直接送入 16 位元 Windows GDI

技術比較矩陣:WMF 對比競爭格式

技術屬性WMF (目前)EMFSVGEPS
座標空間16 位元整數(-32768 至 32767)32 位元整數座標IEEE 雙精度浮點數1/72 英吋 PostScript 點
作業系統舊版 16 位元 Windows GDI32 位元 Windows GDI+支援情況因軟體而異。PostScript 印前標準
現代瀏覽器支援零原生瀏覽器支援零原生瀏覽器支援相容性因瀏覽器與應用程式而異。零原生瀏覽器支援
安全性態勢舊版原生解析器風險高原生 GDI 風險中等安全的宣告式 XML(已清理)高風險(可執行語言)

常見損壞模式與十六進位修復指南

圖形顯得嚴重變形,或縮成一個微小的點。

根本原因: 缺少或損壞的 Aldus 可放置標頭(缺少 0xD7CDC69A 檔案簽章標記與邊界框)。

修復: 重新注入標準可放置邊界框,或使用 File2File.app Metafile 轉換器轉碼為 SVG。

安全性分析與解析器攻擊向量

由於 GDI 回呼執行記錄(SETABORTPROC),WMF 是電腦發展史上最容易遭受攻擊的格式之一。

已知攻擊向量

  • 透過舊版 Windows GDI 中的 SETABORTPROC 記錄呼叫來執行任意程式碼。
  • 處理損壞的 16 位元多邊形點陣列時發生緩衝區溢位。
  • 在嵌入式 DIB 點陣圖解壓縮期間發生超出範圍的堆積讀取。

防禦最佳實務: 切勿使用原生作業系統 GDI API 解析 WMF 檔案;請嚴格在隔離的 WebAssembly 環境中進行轉碼。

歷史起源與里程碑

2006微軟針對重大 Windows Metafile 弱點(CVE-2005-4560)發布緊急修補程式。
1993隨著 Windows NT 推出,由 32 位元 Enhanced Metafile (EMF) 格式接替。
1990隨 Windows 3.0 推出,迅速成為桌面出版美工圖案的標準格式。

主要優勢與優點

  • 精簡的向量儲存:1990 年代的傳統美工圖案檔案通常只有幾 KB。
  • 可縮放的向量圖形與字型能夠平滑地縮放到早期桌面印表機解析度。
  • 歷史標準,內嵌於數百萬個舊版 Microsoft Office 文件與封存檔中。

技術限制與缺點

  • 嚴重過時:與現代向量格式相比,16 位元整數座標限制了繪圖精度。
  • 惡名昭彰的安全歷史:舊版的 WMF 記錄執行能力允許嚴重的遠端程式碼執行。
  • 不支援現代向量功能,例如漸層、不透明度遮罩或 CSS 樣式。

有趣的技術冷知識

  • 可放置的 WMF 標頭以檔案簽章(magic bytes)0xD7 0xCD 0xC6 0x9A 開頭,這是由 Aldus Corporation 為 PageMaker 發明的。
  • 2005 年的「SETABORTPROC」記錄漏洞允許攻擊者僅透過讓使用者在 Windows 檔案總管中檢視圖片,就能執行任意組合語言程式碼。
  • 1990 年代的數百萬張磁片美工圖案收藏皆專門以 .WMF 格式散布。

常見技術問題

什麼是 WMF 檔案?

WMF(Windows Metafile)是微軟於 1990 年建立的舊版微軟向量格式,用於在 Windows 3.0 與早期微軟 Office 版本中儲存美工圖案與插圖。

如何將 WMF 轉換為 SVG 或 PNG?

您可以直接在網頁瀏覽器中使用 File2File.app,安全地將 WMF 檔案轉換為現代的、可縮放的 SVG 向量圖形或 PNG 圖片。

為什麼 WMF 過去被認為很危險?

在 2005 年,人們發現了一個嚴重漏洞:WMF 檔案會觸發可執行的印表機回呼,讓惡意檔案僅透過檢視即可感染電腦。