GetEnhMetaFile (gdi32)
Last changed: -65.197.241.129

.
Summary

C# Signature:

[DllImport("gdi32.dll")]
static extern IntPtr GetEnhMetaFile(string lpszMetaFile);

User-Defined Types:

None.

Notes:

None.

Tips & Tricks:

Please add some!

Sample Code:

    [System.Runtime.InteropServices.DllImport("gdi32")]
    static extern int GetEnhMetaFileBits(int hemf, int cbBuffer, byte[] lpbBuffer);

    byte[] GetBytes(Image img)
    {
        // use interop to get the metafile bits
        Metafile mf = img as Metafile;
        var enhMetafileHandle = mf.GetHenhmetafile().ToInt32();
        var bufferSize = GetEnhMetaFileBits(enhMetafileHandle, 0, null);
        var buffer = new byte[bufferSize];
        GetEnhMetaFileBits(enhMetafileHandle, bufferSize, buffer);

        // return bits
        return buffer;
    }

Alternative Managed API:

Do you know one? Please contribute it!

Documentation