次の方法で共有


CDC::SetMapMode

マップ モードを設定します。

virtual int SetMapMode(
   int nMapMode 
);

パラメーター

  • nMapMode
    新しいマップ モードを指定します。 次のいずれかの値になります。

    • MM_ANISOTROPIC   論理単位は、任意にスケーリングされた軸上の任意の単位に変換されます。 マップ モードに MM_ANISOTROPIC を設定しても、現在のウィンドウまたはビューポートの設定は変更されません。 単位、向き、スケーリングを変更するときは、SetWindowExt メンバー関数と SetViewportExt メンバー関数を使う必要があります。

    • MM_HIENGLISH   それぞれの論理単位は、0.001 インチに変換されます。 x 座標の正方向は右、y 座標の正方向は上になります。

    • MM_HIMETRIC   それぞれの論理単位は、0.01 mm に変換されます。 x 座標の正方向は右、y 座標の正方向は上になります。

    • MM_ISOTROPIC   論理単位は、等しくスケーリングされた軸上の任意の単位に変換されます。 x 軸方向の 1 単位は、y 軸方向の 1 単位と同じになります。 両軸の希望する単位と向きを指定するときは、SetWindowExt メンバー関数と SetViewportExt メンバー関数を使います。 GDI は、必要に応じて、x 単位と y 単位が同じサイズになるように調整します。

    • MM_LOENGLISH   それぞれの論理単位は、0.01 インチに変換されます。 x 座標の正方向は右、y 座標の正方向は上になります。

    • MM_LOMETRIC   それぞれの論理単位は、0.1 mm に変換されます。 x 座標の正方向は右、y 座標の正方向は上になります。

    • MM_TEXT   それぞれの論理単位は、1 デバイス ピクセルに変換されます。 x 座標の正方向は右、y 座標の正方向は下になります。

    • MM_TWIPS   それぞれの論理単位は、1 ポイントの 1/20 に変換されます。 1 ポイントは 1/72 インチなので、1 twip は 1/1440 インチになります。x 座標の正方向は右、y 座標の正方向は上になります。

戻り値

直前のマップ モードを返します。

解説

マップ モードは、論理単位をデバイス単位に変換するときの縮尺を定義し、デバイスの x 軸と y 軸の向きも定義します。 GDI は、マップ モードを使って、論理座標を適切なデバイス座標に変換します。 MM_TEXT モードを使うと、アプリケーションが作業するデバイス ピクセルは、1 ピクセルが 1 単位になります。 ピクセルの物理サイズは、デバイスごとに異なります。

MM_HIENGLISHMM_HIMETRICMM_LOENGLISHMM_LOMETRICMM_TWIPS モードは、アプリケーションが物理単位 (インチや mm のような) で描画するときに便利です。 MM_ISOTROPIC モードは、縦横比が 1:1 なので、イメージの正確な形を保存する必要があるときに便利です。 MM_ANISOTROPIC モードは、x 座標と y 座標を個別に調節できるようにします。

注意

デバイス コンテキストを右から左へのレイアウトに変更するために SetLayout を呼び出すと、SetLayout が自動的にマップ モードを MM_ISOTROPIC に変更します。

使用例

CView::OnPrepareDC」の例を参照してください。

必要条件

**ヘッダー:**afxwin.h

参照

参照

CDC クラス

階層図

CDC::SetViewportExt

CDC::SetWindowExt

SetMapMode

その他の技術情報

CDC のメンバー