Cтраница 1
Метафайл хранит список вызовов графических функций Microsoft Windows. В метафайлах допускается присутствие только подмножества функций Windows, но это подмножество достаточно велико и содержит большинство вызовов графических функций. [1]
Метафайл состоит из короткого заголовка, за которым следует определенное количество записей. Дополнительный заголовок размещения может предшествовать заголовку файла. Каждая запись соответствует обращению к интерфейсу графического устройства Windows ( GDI) и содержит размер, номер функции и ряд данных-аргументов. В большинстве случаев слова данных-аргументов являются просто значениями, которые будут переданы в соответствующую подпрограмму Windows GDI, хотя для некоторого набора более усложненных программ есть отчасти более сложные структуры данных. [2]
Метафайл - последовательность элементов, представляющих собой команды, определенные в языке CGM. Одиночный метафайл может содержать различные изображения, которые могут быть либо отдельными, либо последовательными в анимации. Метафайл начинается с элемента BEGIN METAFILE и заголовка метафайла, содержащего его имя и некоторые возможные параметры; например, количество бит в индексе карты цветов. Затем появляется элемент BEGIN PICTURE и заголовок изображения, который содержит имя изображения и его параметры, например, масштабирование. Далее следует элемент BEGIN PICTURE BODY и тело изображения с элементами, рисующими изображение, и элемент END PICTURE. Далее может быть определено следующее изображение, начинающееся с другого BEGIN PICTURE. Наконец, метка END METAFILE обозначает конец файла. [3]
Метафайл [ metafile ] - файл, который содержит элементы изображения, выполненный с использованием как растровой, так и векторной графики. Термин введен в употребление Комитетом по графическим стандартам и планированию SGGRAPH в 1997 г. Соответствующие форматы записи называют метафайловыми. Их достоинства: облегченный перенос с одной системы на другую; заметно меньший размер по отношению к растровой версии того же изображения; обычно хорошо сжимаются. Однако работа с метафайлами достаточно сложна и требует специальной подготовки. [4]
Метафайлы ( Metafiles) хранят не последовательность битов, из которых состоит изображение, а информацию о способе создания картинки. Они хранят последовательности команд рисования, которые и могут быть повторены при воссоздании изображения. Это делает такие файлы, как правило, более компактными, чем битовые матрицы. [5]
Размещаемые метафайлы имеют префиксный заголовок, содержащий размер и информацию о масштабировании. [6]
Хотя метафайлы не так важны, как растровые образы, они все-таки могут играть видную роль во многих приложениях благодаря своей компактности и быстроте. Они также могут служить удобным средством передачи графической или текстовой ( не забудьте, что TextOut является GDI-функцией. [7]
Создайте метафайл, содержащий три эллипса и три прямоугольника. Модифицируйте функцию EnumMetaFileProc так, чтобы она окрашивала каждый встреченный ею эллипс в зеленый цвет. [8]
Создайте метафайлы, содержащие около десяти геометрических фигур, а затем высветите окно сообщений, содержащее порядковые номера фигур и их типы. [9]
Заголовок метафайла содержит список всех шрифтов и наборов символов, использованных в метафайле. Например, шрифт может быть Swiss Bold размером 12 точек, а набор символов мог бы быть US ASCII. Комплект шрифтов, который будет использоваться, не стандартизирован, и нет четко выраженного аварийного выхода, когда у читателя нет того шрифта, который использован в метафайле. [10]
Содержимое расширенного метафайла будет автоматически выведено в рамках элемента управления. По умолчанию, его левый верхний угол будет совпадать с левым верхним углом статического элемента управления, а размер элемента управления будет изменен в соответствии с размером содержимого метафайла. [11]
Словом, метафайл - это не что иное, как список структур, каждая из которых содержит информацию о вызовах таких основных GDI-функций, как Rectangle, Selec - tObject или Ellipse. Команда PlayMetaFile просто пробегает этот список, визуально отображая все фигуры по очереди, как определено. [12]
Рисунки типа метафайлов могут быть разгруппированы, преобразованы в графические объекты, а затем отредактированы при помощи кнопок на панели рисования. После того, как рисунок разбит на объекты, с ним можно работать, используя средства рисования. Объект типа рисунок печатается лучше, чем точечный рисунок, на принтере высокого разрешения. Он занимает меньше на диске и быстрее выводится на экран. [13]
Кроме создания метафайлов, программа Metaphor также предусматривает возможность загрузки и показа этих графических изображений. Программа способна читать и визуально отображать так называемые Aldus-метафайлы, имеющие заголовки, слегка отличающиеся от стандартных метафайлов Windows. Metaphor проверяет каждый метафайл, который ЕЫ собираетесь прочитать и выбирает подходящие методы загрузки и отображения на экране. [14]
Но формат метафайла Windows не так богат художественными возможностями, как EPS. He применяйте его, если хотите работать с цветоделением, потому что этот формат не поддерживает поименованных цветов, которые требуются для цветоделения рисунков ( поименованные цвета связывают метку, например Deep Blue, с цветом и определяют состав цвета. [15]