Метафайл Windows (.wmf)
[MS-WMF]: СтандартWindows Metafile (WMF) - это устаревший 16-битный векторный и растровый контейнерный формат от Microsoft, разработанный в эпоху Windows 3.0 для обмена масштабируемой графикой и клипартами между приложениями Windows.
Конвертировать из WMF в SVG
Бесплатный конвертер из WMF в SVG прямо в браузере. Конвертируйте файлы мгновенно на вашем устройстве.
Анализ и метаданные
Операционные системы и анализаторы файлов идентифицируют файлы WMF по начальной двоичной последовательности байтов:
Сигнатура заголовка на уровне байтов (Magic Bytes)
Операционные системы и анализаторы файлов идентифицируют файлы WMF по начальной двоичной последовательности байтов:
HEX-СИГНАТУРА (СМЕЩЕНИЕ 0):
D7 CD C6 9A / 01 00 09 00ПРЕДСТАВЛЕНИЕ ASCII: ×ÍÆš / ....
Стандартизация: [MS-WMF]: Спецификация формата метафайлов Windows
Технические спецификации
| Архитектура контейнера | 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+ | Универсальный веб-стандарт W3C | Стандарт допечатной подготовки PostScript |
| Поддержка современными браузерами | Нулевая нативная поддержка браузерами | Нулевая нативная поддержка браузерами | 100% нативная встроенная поддержка во всех браузерах | Нулевая нативная поддержка браузерами |
| Уровень безопасности | Высокий риск в устаревших нативных парсерах | Умеренный риск в нативном GDI | Безопасный декларативный XML (очищенный) | Высокий риск (исполняемый язык) |
Типичные режимы повреждения и руководство по восстановлению в HEX
Графика выглядит сильно искаженной или сжатой в микроскопическую точку.
Первопричина: Отсутствующий или поврежденный заголовок Aldus для размещения (отсутствует магический маркер 0xD7CDC69A и ограничивающая рамка).
Восстановление: Повторно внедрите стандартную ограничивающую рамку или перекодируйте в SVG с помощью метафайл-конвертера File2File.
Анализ безопасности и векторы атак на парсер
WMF - один из самых исторически уязвимых форматов в истории вычислительной техники из-за записей выполнения обратных вызовов GDI (SETABORTPROC).
Известные векторы атак
- Выполнение произвольного кода через вызов записи SETABORTPROC в устаревшем Windows GDI.
- Переполнение буфера при обработке поврежденных массивов точек 16-битных многоугольников.
- Чтение из кучи за пределами выделенной памяти во время распаковки внедренного растрового изображения DIB.
Защитные лучшие практики: Никогда не парсите файлы WMF с помощью нативных API GDI операционной системы; выполняйте перекодирование строго внутри изолированных сред WebAssembly.
Исторические истоки и вехи
Ключевые преимущества и плюсы
- Компактное векторное хранилище: файлы клипартов из 1990-х обычно весят всего несколько килобайт.
- Масштабируемые векторные фигуры и шрифты плавно масштабируются под разрешение ранних настольных принтеров.
- Исторический стандарт, встроенный в миллионы устаревших документов и архивов Microsoft Office.
Технические ограничения и минусы
- Серьезное устаревание: 16-битные целочисленные координаты ограничивают точность рисования по сравнению с современными векторными форматами.
- Печально известная история безопасности: возможности выполнения устаревших записей WMF допускали критическое удаленное выполнение кода.
- Отсутствие поддержки современных векторных функций, таких как градиенты, маски непрозрачности или стили CSS.
Интересные технические факты
- Заголовок размещаемого Wmf начинается с магических байтов 0xD7 0xCD 0xC6 0x9A, изобретенных корпорацией Aldus для 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 могли вызывать выполнение обратных вызовов принтера, что позволяло вредоносным файлам заражать компьютеры просто при их просмотре.