This is a type of device context that allows a metafile object to be created (Windows only), and has most of the characteristics of a normal wxDC. The wxMetafileDC::Close member must be called after drawing into the device context, to return a metafile. The only purpose for this at present is to allow the metafile to be copied to the clipboard (see wxMetafile).

Adding metafile capability to an application should be easy if you already write to a wxDC; simply pass the wxMetafileDC to your drawing function instead. You may wish to conditionally compile this code so it is not compiled under X (although no harm will result if you leave it in).

Note that a metafile saved to disk is in standard Windows metafile format, and cannot be imported into most applications. To make it importable, call the function ::wxMakeMetafilePlaceable after closing your disk-based metafile device context.

Derived from


Include files


See also

wxMetafile, wxDC


wxMetafileDC(const wxString& filename = "")

Constructor. If no filename is passed, the metafile is created in memory.





wxMetafile * Close(void)

This must be called after the device context is finished with. A metafile is returned, and ownership of it passes to the calling application (so it should be destroyed explicitly).

ymasuda 平成17年11月19日