次の方法で共有


CMetaFileDC::CreateEnhanced

拡張フォーマットのメタファイルのデバイス コンテキストを作成します。

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

パラメーター

  • pDCRef
    拡張メタファイルの参照のデバイスを識別します。

  • lpszFileName
    null で終わる文字列へのポインター。作成される拡張メタファイルのファイル名を指定します。このパラメーターがの場合、null拡張メタファイルはメモリに基づいて、オブジェクトが破棄されるか、Win32 DeleteEnhMetaFile 関数が呼び出されるとコンテンツは解除されました。

  • lpBounds
    RECT のデータ構造または拡張メタファイルに格納されるピクチャの HIMETRIC 単位のサイズ (.01 ミリメートルの単位で) 指定する CRect のオブジェクトへのポインター。

  • lpszDescription
    ピクチャを作成したアプリケーションの名前を指定するゼロで終わる文字列へのポインター、または図のタイトル。

戻り値

成功した場合は、拡張メタファイルのデバイス コンテキストのハンドル、; それ null

解説

この DC がデバイスに依存のイメージを格納するために使用できます。

Windows は、画像が最初に表示されたデバイスの解像度と単位を記録するために pDCRef のパラメーターで識別される参照のデバイスを使用します。pDCRef のパラメーターが null場合は、参照に現在のディスプレイ デバイスを使用します。

lpBounds のパラメーターが指す RECT のデータ構造の左上のメンバーは、右、下メンバーより小さい必要があります。四角形の端に沿ってポイントは、画像に含まれます。lpBounds が null場合、グラフィック デバイス インターフェイス (GDI) (GDI) は、アプリケーションが描画する画像を囲むことができる最小の四角形の寸法を計算します。lpBounds のパラメーターを使用して指定する必要があります。

The string lpszDescription パラメーターを、によって参照されるアプリケーション名と図の名前との間の null 文字が含まれ、2 種類の null 文字が、"XYZ Graphics Editor\0Bald Eagle\0\0" — \0 は null 文字を表します。ここで、この例の…は、終了する必要があります。lpszDescription が null場合は、拡張メタファイル ヘッダーに対応するエントリはありません。

アプリケーションは、拡張メタファイル内でグラフィックスのイメージを格納する場合は、この関数によって作成された DC を使用します。この DC を識別するハンドルは、GDI 関数に渡すことができます。

アプリケーションは拡張されたメタファイルに画像を格納した後、CDC::PlayMetaFile 関数を呼び出すことによって、出力デバイスのイメージを表示できます。ピクチャを表示すると、Windows はピクチャを設定し、スケーリングするために、参照のデバイスからの lpBounds のパラメーターに、その解決のデータをポイントする四角形を使用します。この関数が返すデバイス コンテキストは、新しい DC に関連付けられている同じ既定の属性が含まれています。

アプリケーションは以前の Windows メタファイルの形式に拡張メタファイルをに変換 GetWinMetaFileBits Win32 関数を使用する必要があります。

拡張メタファイルのファイル名は .EMF の拡張機能を使用する必要があります。

必要条件

ヘッダー: afxext.h

参照

関連項目

CMetaFileDC クラス

階層図

CMetaFileDC::CloseEnhanced

CDC::PlayMetaFile

CloseEnhMetaFile

DeleteEnhMetaFile

GetEnhMetaFileDescription

GetEnhMetaFileHeader

GetWinMetaFileBits

PlayEnhMetaFile