Метафайлы в GDI+
GDI+ предоставляет класс Metafile, чтобы можно было записывать и отображать метафайлы. Метафайл, также называемый векторным изображением, — это изображение, которое хранится в виде последовательности команд и параметров рисования. Команды и параметры, записанные в объекте Metafile, могут храниться в памяти или сохраняться в файле или потоке.
Форматы метафайлов
GDI+ может отображать метафайлы, хранящиеся в следующих форматах:
Метафайл Windows (WMF)
Расширенный метафайл (EMF)
EMF+
GDI+ может записывать метафайлы в форматах EMF и EMF+, но не в формате WMF.
EMF+ — это расширение для EMF, позволяющее хранить записи GDI+ . Существует два варианта формата EMF+: EMF+ Только и EMF+ Двойное. Только метафайлы EMF+ содержат только записи GDI+. Такие метафайлы могут отображаться GDI+, но не GDI. В EMF+ двойных метафайлах содержатся записи GDI+ и GDI. Каждая запись GDI+ в каждом EMF+ двойном метафайле связана с альтернативной записью GDI. Такие метафайлы могут быть отображены с помощью GDI+ или GDI.
В следующем примере показан метафайл, который ранее был сохранен в виде файла. Метафайл отображается так, что его верхний левый угол находится в точке с координатами (100, 100).
public void Example_DisplayMetafile(PaintEventArgs e)
{
Graphics myGraphics = e.Graphics;
Metafile myMetafile = new Metafile("SampleMetafile.emf");
myGraphics.DrawImage(myMetafile, 100, 100);
}
Public Sub Example_DisplayMetafile(ByVal e As PaintEventArgs)
Dim myGraphics As Graphics = e.Graphics
Dim myMetafile As New Metafile("SampleMetafile.emf")
myGraphics.DrawImage(myMetafile, 100, 100)
End Sub
См. также
.NET Desktop feedback