CMetaFileDC::CreateEnhanced

BOOL CreateEnhanced( CDC* pDCRef, LPCTSTR lpszFileName,LPCRECT lpBounds, LPCTSTR lpszDescription );

返回值:如果成功,则返回增强型图元文件的设备上下文,否则为NULL。

参数:
pDCRef标识了针对与增强型图元文件参考的设备。
lpszFileName指向以空字符为终止符的字符串。它指定了将要创建的图元文件的文件名。如果lpszFilename值为NULL,那么增强型图元文件建立在内存中,当其对象被销毁,或者调用了::DeleteEnhMetaFile函数,其内容将丢失。
lpBounds指向RECT数据结构,或指向以HIMETRIC为单位(以.01毫米为增量),存储在增强型图元文件中指定图形维数的CRect 对象。
lpszDescription指向以空字符为终止符的字符串。该字符串指定了创建图形的应用名称,也指定了图形的标题。

说明:
为增强型图元文件创建设备上下文。DC能够用于存储不依赖于设备的图形。
Windows通过参数pDCRef使用参考的设备标识符,以记录首次出现图形设备的图形分辨率或单位。若参数pDCRef为NULL,那么使用当前参考的显示设备。
由参数lpBounds指向的RECT数据结构的左边和顶端成员必须比右边和底端成员小。矩形的边界点也包含在图形中。若lpBounds为NULL,那么图形设备界面(GDI)将计算由应用绘制的封装在图形中的最小矩形的维数。参数lpBounds也提供了可能的位置。
由参数lpszDescription指向的字符串在应用名和图形名之间必须包含空字符,并且它必须包含两个空字符为终止符枛柪*"XYZ GraphicsEditor\0Bald Eagle\0 \0,",其中\0代表空字符。若lpszDescription为NULL,那么在增强型图元文件标题中就没有相应的入口。
应用使用由该函数创建的DC,用于在增强型图元文件中存储一个图形。标识该DC值的句柄可以传递给任何的GDI函数。
在应用在增强型图元文件中存储图形之后,它能够通过调用CDC::PlayMetaFile函数在任何的输出设备中显示图形。当显示图形时,Windows能够使用由参数lpBounds指向的矩形,也可以使用参考设备的图形分辨率来决定图形的位置及比例。由该函数返回的设备上下文包含了与任何新DC值相关联的相同的缺省属性。
应用必须使用::GetWinMetaFileBits函数来转换增强型图元文件为更老的图元文件格式。
增强型图元文件的文件名应当使用.EMF做扩展名。

请参阅:
CMetaFileDC::CloseEnhanced, CDC::PlayMetaFile, ::CloseEnhMetaFile, ::DeleteEnhMetaFile, ::GetEnhMetaFileDescription, ::GetEnhMetaFileHeader, ::GetWinMetaFileBits, ::PlayEnhMetaFile