第7回 画像をウインドウの中央に配置する

ImageViewer07_01.gif
前回は縦横比を保ったまま拡大縮小できるようにした。画像表示ソフトの多くはウインドウの中央に画像を表示して左右や上下に均等に余白が作られる。しかし画像の右側や下側に余白が作られる形式での表示になっている。
今回は一般的な画像表示ソフトと同様にウインドウの中央に画像を表示させる。

ImageViewer07_02.gif ImageViewerView.hに追加および変更を施した。 DrawImageに渡す第二、第三引数を利用してウインドウの中央に画像が表示されるようにしている。
		UINT	nX;
		UINT	nY;
			//描画位置計算
			nX = (nWindowWidth - nWidth) / 2;
			nY = 0;
			//描画位置計算
			nX = 0;
			nY = (nWindowHeight- nHeight) / 2;
		//画像表示
		cGraphics.DrawImage(pImage,(REAL)nX,(REAL)nY,(REAL)nWidth,(REAL)nHeight);

ImageViewer07_03.gif
実行するときちんと画像がウインドウの中央に表示され、左右均等に余白が割り当てられた。

プロジェクトファイルをダウンロード


カテゴリー「画像表示ソフトを作る」 のエントリー