Метафайл Windows (.wmf)

[MS-WMF]: Стандарт

Windows Metafile (WMF) - це застарілий 16-бітний векторний і растровий контейнерний формат від Microsoft, розроблений в епоху Windows 3.0 для спільного використання масштабованої графіки та кліпартів між додатками Windows.

Конвертувати з WMF у SVG

Безкоштовний конвертер з WMF у SVG у браузері. Миттєво конвертуйте файли на своєму пристрої.

Аналіз та метадані

Операційні системи та аналізатори файлів ідентифікують файли WMF, перевіряючи початкову послідовність бінарних байтів:

Виберіть або перетягніть файли сюди

100% приватна конвертація у браузері - файли ніколи не покидають ваш пристрій

або вставте Ctrl+V
Гарантія конфіденційності з нульовою передачею мережею: 0 байт завантажено на зовнішні сервери. Уся обробка виконується локально в пісочниці вашого браузера.

Сигнатура заголовка на байтовому рівні (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 (Поточний)EMFSVGEPS
Координатний простір16-бітне ціле число (від -32768 до 32767)32-бітні цілочисельні координатиЧисло з плаваючою комою подвійної точності IEEEПункт PostScript (1/72 дюйма)
Операційна системаЗастарілий 16-бітний Windows GDI32-бітний Windows GDI+Універсальний вебстандарт W3CСтандарт додрукарської підготовки PostScript
Підтримка сучасними браузерамиНульова підтримка браузерамиНульова підтримка браузерами100% нативно всередині всіх браузерівНульова підтримка браузерами
Стан безпекиВисокий ризик у застарілих власних аналізаторахПомірний ризик у рідному GDIБезпечний декларативний XML (очищений)Високий ризик (виконувана мова)

Типові режими пошкодження та посібник з відновлення в шістнадцятковому форматі

Графічне зображення виглядає сильно спотвореним або зменшеним до мікроскопічної точки.

Першопричина: Відсутній або пошкоджений заголовок розміщення Aldus (відсутній магічний маркер 0xD7CDC69A та обмежувальна рамка).

Відновлення: Повторно впровадьте стандартну обмежувальну рамку або транскодуйте у SVG за допомогою конвертера метафайлів File2File.

Аналіз безпеки та векторів атак на парсери

WMF є одним із найбільш історично вразливих форматів в історії обчислювальної техніки через записи виконання зворотних викликів GDI (SETABORTPROC).

Відомі вектори атак

  • Довільне виконання коду через виклик запису SETABORTPROC у застарілому Windows GDI.
  • Переповнення буфера під час обробки пошкоджених масивів 16-бітних точок багатокутника.
  • Читання з купи за межами буфера під час розпакування вбудованої растрової мапи DIB.

Захисні найкращі практики: Ніколи не аналізуйте файли WMF за допомогою власних API GDI операційної системи; виконуйте транскодування виключно в ізольованих середовищах WebAssembly.

Історичне походження та віхи

2006Microsoft випускає екстрене оновлення для критичної вразливості у форматі Windows Metafile (CVE-2005-4560).
1993З появою Windows NT замінено на 32-бітний формат Enhanced Metafile (EMF).
1990Представлено разом із Windows 3.0, швидко ставши стандартним форматом для кліпартів настільних видавничих систем.

Головні переваги та плюси

  • Компактне векторне сховище: застарілі файли кліпартів 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 могли запускати виконувані зворотні виклики принтера, що дозволяло шкідливим файлам заражати комп'ютери просто під час їх перегляду.