Compartilhar via


Metafiles no GDI+

GDI+ fornece a classe Metafile para que você possa gravar e exibir metafilos. Um metafile, também chamado de imagem de vetor, é uma imagem armazenada como uma sequência de comandos e configurações de desenho. Os comandos e as configurações gravados em um objeto Metafile podem ser armazenados na memória ou salvos em um arquivo ou fluxo.

Formatos de metafile

O GDI+ pode exibir metafilos armazenados nos seguintes formatos:

  • Windows Metafile (WMF)

  • Metafile aprimorado (EMF)

  • EMF+

O GDI+ pode gravar metafiles nos formatos EMF e EMF+, mas não no formato WMF.

O EMF+ é uma extensão do EMF que permite que registros GDI+ sejam armazenados. Há duas variações no formato EMF+: EMF+ Somente e EMF+ Dual. Metarquivos EMF+ contêm apenas registros GDI+. Esses metafilos podem ser exibidos por GDI+, mas não por GDI. Os metarquivos duplos EMF+ contêm registros GDI+ e GDI. Cada registro GDI+ em um metafile EMF+ Dual é emparelhado com um registro GDI alternativo. Esses metafilos podem ser exibidos por GDI+ ou por GDI.

O exemplo a seguir exibe um metafile que foi salvo anteriormente como um arquivo. O metafile é exibido com seu canto superior esquerdo em (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

Consulte também