GetWinMetaFileBits
The GetWinMetaFileBits
function converts the enhanced-format records from a metafile into
Windows-format records and stores the converted records in the specified
buffer.
UINT GetWinMetaFileBits(
HENHMETAFILE hemf, |
// handle to the
enhanced metafile |
UINT cbBuffer, |
// buffer size |
LPBYTE lpbBuffer, |
// pointer to
buffer |
INT fnMapMode, |
// mapping mode |
HDC hdcRef |
// handle of
reference device context |
); |
|
Parameters
hemf
Identifies
the enhanced metafile.
cbBuffer
Specifies the
size, in bytes, of the buffer into which the converted records are to be
copied.
lpbBuffer
Points to the
buffer into which the converted records are to be copied. If lpbBuffer
is NULL, GetWinMetaFileBits returns the the number of bytes required to
store the converted metafile records.
fnMapMode
Specifies the
mapping mode to use in the converted metafile.
hdcRef
Identifies
the reference device context.
Return Values
If the
function succeeds and the buffer pointer is NULL, the return value is the
number of bytes required to store the converted records; if the function
succeeds and the buffer pointer is a valid pointer, the return value is the
size of the metafile data in bytes.
If the
function fails, the return value is zero.
Remarks
This function
converts an enhanced metafile into a Windows-format metafile so that its
picture can be displayed in an application that recognizes the older format.
Windows uses
the reference device context to determine the resolution of the converted
metafile.
The GetWinMetaFileBits
function does not invalidate the enhanced metafile handle. An application
should call the DeleteEnhMetaFile
Due to the
limitations of the Windows-format metafile, some information can be lost in the
retrieved metafile contents. For example, an original call to the PolyBezier
Windows 3.x
applications define the viewport origin and extents of a picture stored in a
Windows-format metafile. As a result, the Windows-format records created by GetWinMetaFileBits
do not contain the SetViewportOrgEx and SetViewportExtEx
functions. However, GetWinMetaFileBits does create Windows-format
records for the SetWindowExtEx and SetMapMode functions.
To create a
scalable Windows-format metafile, specify MM_ANISOTROPIC as the fnMapMode
parameter.
The
upper-left corner of the metafile picture is always mapped to the origin of the
reference device.
See Also