增強型中繼檔 (.emf)
[MS-EMF]:增強型中繼檔格式規格 標準增強型中繼檔(Enhanced Metafile, EMF)是微軟的 32 位元向量與點陣圖繪圖容器格式,專為 Windows 作業系統中的高擬真列印與應用程式剪貼簿交換而設計。
將 EMF 轉換為 SVG
免費的瀏覽器端 EMF 轉 SVG 轉換器。在您的裝置上即時轉換檔案。
檢查與中繼資料
作業系統與檔案分析工具透過檢查開頭的二進位位元組序列來識別 EMF 檔案:
位元組層級標頭簽章(檔案簽章)
作業系統與檔案分析工具透過檢查開頭的二進位位元組序列來識別 EMF 檔案:
十六進位簽章(偏移量 0):
01 00 00 00 28 00 00 00ASCII 表示法: ....(...(偏移量 40:' EMF')
標準化: [MS-EMF]:增強型中繼檔格式規格
技術規格
| 容器架構 | 由 ENHMETA_HEADER 與 EMR_EOF 界定的 32 位元 GDI 繪圖記錄結構序列 |
| 壓縮 | 未壓縮的繪製指令;可選的內嵌 PNG / JPEG 點陣圖記錄 |
| 位元組序 | 小端序(Intel x86) |
| 色彩空間 | 裝置相依 RGB, sRGB 色彩記錄 |
| 色版與結構 | 向量繪製操作(路徑、字型、筆刷、筆畫)與 24/32 位元點陣圖 |
| 最大尺寸 | 以 0.01 公厘為參考單位量測的虛擬裝置邊界 |
| 透明度 | Alpha 混色點陣圖操作(EMR_ALPHABLEND)與透明筆刷/筆畫遮罩 |
| 串流與漸進式 | 依序按記錄播放,直接輸入至 GDI 裝置內容中 |
技術比較矩陣:EMF 對比競爭格式
| 技術屬性 | EMF (目前) | WMF | SVG | |
|---|---|---|---|---|
| 位元架構 | 32 位元座標空間(Windows NT+) | 16 位元座標空間(Windows 3.x) | W3C 網頁標準 | ISO 32000 文件標準 |
| 跨平台支援 | 以 Windows 為中心;在 Mac / Linux 上需要模擬 | 僅限舊版 Windows | 廣泛使用的網頁標準;支援情形取決於應用程式與平台 | 支援多種平台;算繪情形取決於檢視器 |
| 現代網頁顯示 | 需要轉換為 SVG / PNG | 需要轉換為 SVG / PNG | 許多現代瀏覽器皆支援 | 需要 PDF 檢視器外掛程式 |
| Office 整合 | 部分 Word 與 PowerPoint 工作流程支援向量貼上 | 舊版 Office 支援 | 現代 Office 365 支援 | 以附件/文件匯入 |
常見損壞模式與十六進位修復指南
文件在應算繪 EMF 圖形的位置顯示紅色的「X」方框。
根本原因: 遺失或截斷了 EMR_EOF(檔案結尾)記錄,導致 GDI 播放中止。
修復: 修復中繼檔串流邊界,或使用 File2File.app 中繼檔轉換器將其轉換為 SVG。
安全性分析與解析器攻擊向量
Windows GDI 中的 EMF 處理歷史上一直是透過不受信任的 Office 文件中格式錯誤的記錄長度欄位進行攻擊的途徑。
已知攻擊向量
- EMR_STRETCHBLT 記錄長度發生整數溢位,導致遠端程式碼執行。
- 解析損毀的 GDI 筆刷與筆畫色彩表時發生緩衝區過讀。
- 舊版 GDI 算繪常式中的字型描述項記錄發生堆積損毀。
防禦最佳實務: 在沙箱化的 WebAssembly 執行環境中將 EMF 檔案轉碼為 SVG 或 PNG。
歷史起源與里程碑
2006隨 Windows Vista 的 GDI+ 引入 EMF+,新增了反鋸齒與貝茲曲線。
1995Windows 95 將 EMF 整合為預設的列印多工緩衝格式,以提升列印作業的回應速度。
1992隨 Windows NT 3.1 引入,將舊版的 16 位元 WMF 格式升級為完整的 32 位元座標。
主要優勢與優點
- 解析度獨立列印:向量圖形與字型外框能以任何印表機 DPI 清晰縮放。
- EMF 是部分 Windows 應用程式(包含 Microsoft Office)用於剪貼簿與文件交換的圖形格式之一。
- 支援內嵌高解析度點陣圖,並結合可編輯的向量標註與線條圖。
技術限制與缺點
- 深度繫結至微軟 Windows GDI 圖形架構,導致跨平台算繪變得很複雜。
- 缺乏現代 SVG 所具備的現代 CSS 樣式、濾鏡與動畫功能。
- 舊版作業系統中的舊版 EMF 算繪引擎歷史上曾遭受解析器漏洞的困擾。
有趣的技術冷知識
- 每個有效 EMF 檔案的第 40 個位元組包含簽章 ASCII 字元' EMF'(0x20 0x45 0x4D 0x46)。
- Windows 列印多工緩衝處理程式會在幕後將文件轉換為 EMF 檔案,然後再將原始指令傳送給印表機驅動程式。
- EMF 同時在兩個座標系統中測量尺寸:裝置像素與百分之一公厘。
常見技術問題
WMF 與 EMF 有什麼區別?
WMF 是來自 Windows 3.1 的過時 16 位元格式,而 EMF 是其現代的 32 位元後繼者,具有更卓越的座標精度與增強的圖形指令。
我可以將 EMF 檔案轉換為 SVG 嗎?
可以。File2File.app 可以直接將 EMF 中繼檔向量記錄轉換為現代、乾淨的 SVG 檔案,供網頁與設計使用。
為什麼 Microsoft Office 會使用 EMF?
部分 Office 剪貼簿工作流程會使用 EMF 來保留向量圖形與文字,但實際行為會因應用程式、版本與內容而異。