Метафайл Windows (.wmf)
[MS-WMF]: СтандартWindows Metafile (WMF): це застарілий 16-бітний векторний і растровий контейнерний формат Microsoft, розроблений в епоху Windows 3.0 для обміну масштабованою графікою та кліпартом між застосунками Windows.
Конвертувати з WMF у SVG
Безкоштовний конвертер з WMF у SVG у браузері. Миттєво конвертуйте файли на своєму пристрої.
Аналіз та метадані
Операційні системи та аналізатори файлів ідентифікують файли WMF, перевіряючи початкову послідовність бінарних байтів:
Сигнатура заголовка на байтовому рівні (Magic Bytes)
Операційні системи та аналізатори файлів ідентифікують файли WMF, перевіряючи початкову послідовність бінарних байтів:
ШІСТНАДЦЯТКОВА СИГНАТУРА (ЗСУВ 0):
D7 CD C6 9A / 01 00 09 00ПОДАННЯ В ASCII: ×ÍÆš / ....
Стандартизація: [MS-WMF]: Windows Metafile Format Specification
Технічні характеристики
| Архітектура контейнера | 16-бітні записи метафайлу GDI, перед якими необов'язково вказано 22-байтовий заголовок Aldus для розміщення |
| Стиснення | Нестиснені 16-бітні записи векторних і растрових команд малювання |
| Порядок байтів (Endianness) | Порядок байтів від молодшого до старшого (Intel x86) |
| Колірні простори | Залежний від пристрою RGB |
| Канали та структура | Векторні контури, полігони, рядки тексту та вбудовані 16-бітні/24-бітні бітові мапи DIB |
| Максимальні розміри | 16-бітний простір цілочисельних координат (від -32 768 до +32 767 одиниць) |
| Прозорість | Маски прозорості двійкової растрової операції (ROP2) |
| Потокове та прогресивне завантаження | Послідовне відтворення записів безпосередньо засобами 16-бітної Windows GDI |
Технічна матриця порівняння: WMF проти конкурентів
| Технічний атрибут | WMF (Поточний) | EMF | SVG | EPS |
|---|---|---|---|---|
| Координатний простір | 16-бітне ціле число (від -32768 до 32767) | 32-бітні цілочисельні координати | Число з плаваючою комою подвійної точності IEEE | Пункт PostScript (1/72 дюйма) |
| Операційна система | Застаріла 16-бітна Windows GDI | 32-бітний Windows GDI+ | Підтримка залежить від програми. | Стандарт додрукарської підготовки PostScript |
| Підтримка сучасними браузерами | Браузери не підтримують формат | Браузери не підтримують формат | Сумісність залежить від браузера та програми. | Браузери не підтримують формат |
| Стан безпеки | Високий ризик у застарілих системних засобах розбору | Помірний ризик у системному GDI | Безпечний декларативний XML (очищений) | Високий ризик (виконувана мова) |
Типові режими пошкодження та посібник з відновлення в шістнадцятковому форматі
Графічне зображення виглядає сильно спотвореним або зменшеним до мікроскопічної точки.
Першопричина: Відсутній або пошкоджений заголовок Aldus для розміщення (відсутній магічний маркер 0xD7CDC69A та обмежувальна рамка).
Відновлення: Додайте стандартну рамку розміщення або перетворіть файл у SVG за допомогою конвертера метафайлів File2File.app.
Аналіз безпеки та векторів атак на парсери
WMF є одним із форматів із найгіршою історією вразливостей в обчислювальній техніці через записи виконання зворотних викликів GDI (SETABORTPROC).
Відомі вектори атак
- Довільне виконання коду через виклик запису SETABORTPROC у застарілому Windows GDI.
- Переповнення буфера під час обробки пошкоджених масивів 16-бітних точок багатокутника.
- Читання за межами буфера в динамічній пам’яті під час розпакування вбудованого растрового зображення DIB.
Рекомендації щодо захисту: Не розбирайте файли WMF за допомогою системних API GDI; перетворюйте їх лише в ізольованих середовищах WebAssembly.
Історичне походження та віхи
Основні переваги
- Компактне векторне сховище: застарілі файли кліпартів 1990-х років зазвичай важать лише кілька кілобайтів.
- Масштабовані векторні фігури та шрифти плавно масштабуються відповідно до роздільної здатності ранніх настільних принтерів.
- Історичний стандарт, вбудований у мільйони застарілих документів та архівів Microsoft Office.
Технічні обмеження та недоліки
- Серйозна застарілість: 16-бітні цілочисельні координати обмежують точність малювання порівняно з сучасними векторними форматами.
- Сумнівна історія безпеки: застарілі можливості виконання записів WMF призводили до критичного віддаленого виконання коду.
- Відсутність підтримки сучасних векторних функцій, таких як градієнти, маски непрозорості або стилі CSS.
Цікаві технічні факти
- Заголовок WMF для розміщення починається з магічних байтів 0xD7 0xCD 0xC6 0x9A, які компанія Aldus Corporation вигадала для PageMaker.
- Вразливість запису 'SETABORTPROC' у 2005 році дозволяла зловмисникам виконувати довільний асемблерний код просто тоді, коли користувач переглядав зображення у Провіднику Windows.
- Мільйони колекцій кліпартів на дискетах у 1990-х роках розповсюджувалися виключно у форматі .WMF.
Поширені технічні запитання
Що таке файл WMF?
WMF (Windows Metafile): це застарілий векторний формат Microsoft, створений у 1990 році для зберігання кліпартів та ілюстрацій у Windows 3.0 і ранніх версіях Microsoft Office.
Як я можу конвертувати WMF у SVG або PNG?
Ви можете безпечно конвертувати файли WMF у сучасні масштабовані векторні графічні файли SVG або зображення PNG за допомогою File2File.app прямо у своєму веббраузері.
Чому у минулому формат WMF вважався небезпечним?
У 2005 році було виявлено критичну вразливість, через яку файли WMF могли запускати виконувані зворотні виклики принтера, що дозволяло шкідливим файлам заражати комп'ютери просто під час їх перегляду.
Пов'язані пари конвертації WMF
Перетворюйте застарілі 16-бітні записи команд векторного малювання Windows GDI на сучасні масштабовані контури SVG без втрати роздільної здатності.
Розмістіть кліпарт Windows на односторінковому PDF-файлі для офісного документа чи перегляду. Підтримувані команди малювання перетворюються на растр, тому початкові фігури не редагуються.