共用方式為


CreateEnhMetaFileA 函式 (wingdi.h)

CreateEnhMetaFile 函式會為增強格式元檔建立裝置內容。 此裝置內容可用來儲存與裝置無關的圖片。

語法

HDC CreateEnhMetaFileA(
  [in] HDC        hdc,
  [in] LPCSTR     lpFilename,
  [in] const RECT *lprc,
  [in] LPCSTR     lpDesc
);

參數

[in] hdc

增強型元文件參考裝置的句柄。 此參數可以是 NULL;如需詳細資訊,請參閱。

[in] lpFilename

要建立之增強元檔之檔名的指標。 如果此參數為 NULL,增強型元檔會以記憶體為基礎,而且當使用 DeleteEnhMetaFile 函式刪除時,其內容會遺失。

[in] lprc

RECT 結構的指標,指定要儲存在增強元檔之圖片的 .01 公厘單位 (維度) 。

[in] lpDesc

字串的指標,指定建立圖片的應用程式名稱,以及圖片的標題。 此參數可以是 NULL;如需詳細資訊,請參閱。

傳回值

如果函式成功,傳回值會是增強型元檔之裝置內容的句柄。

如果函式失敗,傳回值為 NULL

備註

其中文字自變數必須使用 Unicode 字元,請使用 CreateEnhMetaFile 函式作為寬字元函式。 其中文字自變數必須使用 Windows 字元集中的字元,請使用此函式作為 ANSI 函式。

系統會使用 hdcRef 參數所識別的參照裝置,來記錄原本顯示圖片之裝置的解析度和單位。 如果 hdcRef 參數為 NULL,則會使用目前的顯示裝置來參考。

lpRect 參數所指向之 RECT 結構的層成員必須分別小於成員和成員。 矩形邊緣的點會包含在圖片中。 如果 lpRectNULL,圖形裝置介面 (GDI) 會計算應用程式所繪製圖片周圍之最小矩形的維度。 應該盡可能提供 lpRect 參數。

lpDescription 參數所指向的字串必須包含應用程式名稱與圖片名稱之間的 Null 字元,而且必須以兩個 Null 字元終止,例如“XYZ Graphics 編輯器\0Bald#0\0”,其中 \0 代表 Null 字元。 如果 lpDescriptionNULL,則 enhanced-metafile 標頭中沒有對應的專案。

應用程式會使用此函式所建立的裝置內容,將圖形圖片儲存在增強型元檔中。 識別此裝置內容的句柄可以傳遞至任何 GDI 函式。

應用程式將圖片儲存在增強型元文件之後,即可藉由呼叫 PlayEnhMetaFile 函式,在任何輸出裝置上顯示圖片。 顯示圖片時,系統會使用 lpRect 參數指向的矩形,以及參考裝置的解析度數據來定位和縮放圖片。

此函式所傳回的裝置內容包含與任何新裝置內容相關聯的相同預設屬性。

應用程式必須使用 GetWinMetaFileBits 函式,將增強型元檔轉換為較舊的 Windows 元檔格式。

增強型元檔的檔名應該使用.emf擴展名。

範例

如需範例,請參閱 建立增強型元檔

注意

wingdi.h 標頭會將 CreateEnhMetaFile 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例

規格需求

需求
最低支援的用戶端 Windows 2000 Professional [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限桌面應用程式]
目標平台 Windows
標頭 wingdi.h (包含 Windows.h)
程式庫 Gdi32.lib
Dll Gdi32.dll

另請參閱

CloseEnhMetaFile

DeleteEnhMetaFile

GetEnhMetaFileDescription

GetEnhMetaFileHeader

GetWinMetaFileBits

元檔函式

元檔概觀

PlayEnhMetaFile

矩形