OrangeMaker_logo
memo アイコン SDK-MFC 備忘録

Windows SDKやMFCに関するメモです。
(記載内容について正しいことを保証するものではありません。MSDN等で確認してください)

フォントのポイントと高さ

2009/10/30 作成

定番の変換の様です。LOGFONTでは高さでデータを指定しますが、表示はポイントで行ったりするときに知っておくと便利です。解説はできません

	
int PointToHeight(int point)
{
    CClientDC dc(AfxGetMainWnd());

    // ポイントをフォントの高さに変換
    int nHeight = ::MulDiv(point, dc.GetDeviceCaps(LOGPIXELSY), 72);
    return nHeight;
}
	
int HeightToPoint(int height)
{
    CClientDC dc(AfxGetMainWnd());
		
    // フォントの高さをポイントに変換
    int nPoint = ::MulDiv(height, 72, dc.GetDeviceCaps(LOGPIXELSY));
    return nPoint;
}