Функция |
Описание |
CloseEnhMetaFile |
Закрывает контекст устройства расширенного метафайла и получает манипулятор метафайла |
CopyEnhMetaRle |
Копирует расширенный метафайл |
CloseMetaFile |
Закрывает контекст устройства метафайла и возвращает манипулятор метафайла |
CopyMetaFile |
Копирует метафайл |
CreateEnhMetaFile |
Создает контекст устройства расширенного метафайла, готового к выводу |
DeleteEnhMetaFile |
Удаляет расширенный метафайл |
DeleteMetaFile |
Удаляет метафайл |
EnumEnhMetaFile |
Перечисляет записи расширенного метафайла |
EnumMetaFile |
Перечисляет записи метафайла |
GdiComments |
Включает комментарий в расширенный метафайл |
GetEnhMetaFile |
Получает манипулятор для заданного метафайла на диске |
GetEnhMetaFileBits |
Читает данные из расширенного метафайла в блок памяти |
GetEnhMetaFileDescription |
Получает описание расширенного метафайла, если оно существует |
GetEnhMetaFileHeader |
Заполняет структуру ENHMETAHEADER для расширенного метафайла |
GetEnhmetaFilePaletteEntries |
Читает содержимое палитры для расширенного метафайла |
GetMetaFile |
Получает манипулятор метафайла для файла DOS, содержащего данные метафайла |
GetMetaFileBitsEx |
Читает данные из метафайла в блок памяти |
GetWinMetaFileBits |
Преобразует расширенный метафайл в стандартный |
PlayEnhMetaFile |
Воспроизводит команды расширенного метафайла |
PlayEnhMetaFileRecord |
Воспроизводит одну запись расширенного метафайла |
PlayMetaFile |
Воспроизводит команды метафайла |
PlayMetaFileRecord |
Воспроизводит одну запись метафайла |
arSetEnhMetaFileBits |
Создает манипулятор расширенного метафайла для блока памяти, содержащего метафайл |
SetMetaFileBitsEx |
Создает манипулятор метафайла для блока памяти, содержащего метафайл |
SetWinMetaFileBits |
Преобразует стандартный метафайл в расширенный |
Метафайлы и системы координат
Если загрузить метафайл в графическое поле, вы заметите, что он почти всегда масштабируется по размерам графического поля. Как это происходит, если метафайл — не более чем набор графических команд GDI с фиксированными координатами? Ведь метафайл не может заранее определить размер области, в которой он будет воспроизведен, или узнать выбранную систему координат — или все-таки может?
Ответ вам уже известен. Метафайл не может узнать размеры области, в которой он будет воспроизводиться, или прочитать размер изображения и соответствующим образом отрегулировать графические команды. Впрочем, эта информация ему не нужна.
Метафайлы содержат последовательность команд GDI, а параметры команд GDI задаются в логических или мировых координатах. Но логические координаты не имеют никакого отношения к тому, в каком месте устройства будет выводиться изображение и какими будут его размеры. Это задача области просмотра!
Если приложение, отображающее метафайл, задает параметры области просмотра, а метафайл задает параметры логического окна (и рисует только в этом логическом окне), метафайл всегда будет отображаться в области просмотра, назначенной приложением.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.