Enhanced Metafile (.emf)

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

Enhanced Metafile (EMF) е 32-битов контейнер за векторна и растърна графика на Microsoft, проектиран за висококачествен печат и обмен чрез клипборда на приложенията в рамките на операционната система Windows.

Конвертиране на EMF към SVG

Безплатен конвертор от EMF към SVG в браузъра. Конвертирайте файлове незабавно на вашето устройство.

Инспектиране и метаданни

Операционните системи и файловите анализатори идентифицират EMF файлове чрез проверка на началната двоична байтова последователност:

Изберете или пуснете файлове тук

100% поверително конвертиране в браузъра - файловете никога не напускат вашето устройство

или поставете Ctrl+V
Гаранция за поверителност с нулево мрежово предаване: 0 байта са качени на външни сървъри. Цялата обработка се извършва локално в пясъчниците на вашия браузър.

Байтов подпис на хедъра (Magic Bytes)

Операционните системи и файловите анализатори идентифицират EMF файлове чрез проверка на началната двоична байтова последователност:

HEX ПОДПИС (ОФСЕТ 0):

01 00 00 00 28 00 00 00

ASCII ПРЕДСТАВЯНЕ: ....(... (offset 40: ' EMF')

Стандартизация: [MS-EMF]: Enhanced Metafile Format Specification

Технически спецификации

Контейнерна архитектураSequence of 32-bit GDI drawing record structures bounded by ENHMETA_HEADER and EMR_EOF
КомпресияUncompressed drawing commands; optional embedded PNG/JPEG raster records
Поредност на байтовете (Endianness)Little-Endian (Intel x86)
Цветови пространстваDevice Dependent RGB, sRGB color records
Канали и структураVector drawing operations (paths, fonts, pens, brushes) and 24/32-bit raster bitmaps
Максимални размериVirtual device bounds measured in 0.01 millimeter reference units
ПрозрачностAlpha blend raster operations (EMR_ALPHABLEND) and transparent pen/brush masks
Стрийминг и прогресивно зарежданеSequential record-by-record playback directly into GDI device contexts

Техническа сравнителна матрица: EMF спрямо конкуренти

Технически атрибутEMF (Текущ)WMFSVGPDF
Битна архитектура32-битово координатно пространство (Windows NT+)16-битово координатно пространство (Windows 3.x)Уеб стандарт на W3CДокументен стандарт ISO 32000
Междуплатформена поддръжкаОриентиран към Windows; изисква емулация на Mac/LinuxСамо за стар Windows100% универсален уеб стандартУниверсален за всички ОС платформи
Модерен уеб изгледИзисква конвертиране към SVG/PNGИзисква конвертиране към SVG/PNGВграден по подразбиране във всички браузъриИзисква плъгин за преглед на PDF
Интеграция с OfficeПерфектно вграждане на вектьори в Word/PowerPointСтара поддръжка в OfficeПоддържа се в съвременния Office 365Импортира се като прикачен файл/документ

Често срещани режими на повреда и ръководство за хекс възстановяване

Документът показва червено квадратче с 'X' на мястото, където трябва да се визуализира EMF графиката.

Първопричина: Липсващ или прекъснат запис EMR_EOF (End of File), което кара GDI възпроизвеждането да прекъсне.

Възстановяване: Възстановете границите на потока на метафайла или конвертирайте към SVG с помощта на File2File Metafile Converter.

Анализ на сигурността и вектори на атака към парсера

Обработката на EMF в Windows GDI исторически е била вектор на атака чрез деформирани полета за дължина на записа в недоверени Office документи.

Известни вектори на атака

  • Цялостно препълване (integer overflow) в дължината на записа EMR_STRETCHBLT, водещо до изпълнение на отдалечен код.
  • Превличане на буфера (buffer over-read) при анализа на повредени таблици с цветове за GDI писалки и четки.
  • Препълване на хипа в записи за дескриптори на шрифтове в стари GDI рутинни програми за рендиране.

Защитни добри практики:

Исторически произход и етапи

2006Въведен е EMF+ с GDI+ в Windows Vista, добавяйки изглаждане на ръбовете (антиалиасинг) и криви на Безие.
1995Windows 95 интегрира EMF като формат по подразбиране за опашката за печат (spooling), за да подобри отзивчивостта при задачите за печат.
1992Представен с Windows NT 3.1, надграждащ стария 16-битов WMF формат до пълни 32-битови координати.

Основни предимства и плюсове

  • Независим от резолюцията печат: векторните форми и типографските контури се мащабират перфектно до всяка DPI стойност на принтера.
  • Универсален формат за обмен през клипборда между приложенията на Microsoft Office (Word, Excel, PowerPoint).
  • Поддържа вградени високорезолюционни растърни изображения, комбинирани с редактируеми векторни пояснения и линийна графика.

Технически ограничения и минуси

  • Дълбоко свързан с графичната архитектура GDI на Microsoft Windows, което прави междуплатформеното рендиране сложно.
  • Липса на модерни CSS стилове, филтри и възможности за анимация, които се срещат в съвременния SVG.
  • Старите EMF двигатели за рендиране в по-стари операционни системи исторически са страдале от уязвимости в анализаторите (parsers).

Интересни технически факти

  • Байт 40 на всеки валиден EMF файл съдържа сигнатурните ASCII знаци ' EMF' (0x20 0x45 0x4D 0x46).
  • Услугата за печат на Windows (Print Spooler) конвертира документите в EMF файлове зад кулисите, преди да изпрати сурови команди към драйверите на принтера.
  • EMF измерва размерите едновременно в две координатни системи: устройствени пиксели и стотни от милиметъра.

Често задавани технически въпроси

Каква е разликата между WMF и EMF?

WMF е остарял 16-битов формат от Windows 3.1, докато EMF е неговият модерен 32-битов наследник с превъзходна координатна точност и подобрени графични команди.

Мога ли да конвертирам EMF файл в SVG?

Да. File2File.app може да конвертира векторни записи на метафайлове EMF директно в модерни, чисти SVG файлове за уеб и дизайн употреба.

Защо Microsoft Office използва EMF?

Приложенията на Office използват EMF за копиране и поставяне в клипборда, тъй като той запазва както мащабируемите векторни линии, така и типографията в различните програми без растеризация.