> その認識です、倍率もしくはサイズを指定することができればと思います。
なるほど…
ちょっと仕組み上そのような機能をすぐに作成するのは難しいので、以下のような
『指定の画像を指定のサイズに拡大したグラフィックハンドルを作成する関数』で
代用してみてください m(_ _;m
#include "DxLib.h"
// 指定の画像を指定のサイズに拡大したグラフィックハンドルを作成する
int CreateScalingGraphHandle( int BaseHandle, int CreateSizeX, int CreateSizeY )
{
int NewHandle ;
int DrawScreen ;
int BlendMode ;
int BlendParam ;
// 描画先を記憶しておく
DrawScreen = GetDrawScreen() ;
// ブレンドモードを記憶しておく
GetDrawBlendMode( &BlendMode, &BlendParam ) ;
// 新しい画像を作成する
NewHandle = MakeScreen( CreateSizeX, CreateSizeY, TRUE ) ;
// 描画先を作成した画像にする
SetDrawScreen( NewHandle ) ;
// ブレンドモードを『描画する画像の色をそのまま転送する』設定にする
SetDrawBlendMode( DX_BLENDMODE_SRCCOLOR, 255 ) ;
// 作成した画像に拡大描画
DrawExtendGraph( 0, 0, CreateSizeX, CreateSizeY, BaseHandle, TRUE ) ;
// 描画先を元に戻す
SetDrawScreen( DrawScreen ) ;
// ブレンドモードを元に戻す
SetDrawBlendMode( BlendMode, BlendParam ) ;
// 作成したハンドルを返す
return NewHandle ;
}
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow )
{
int GrHandle ;
int GrWidth, GrHeight ;
int Size2GrHandle ;
// ウインドウモードで起動
ChangeWindowMode( TRUE ) ;
// DXライブラリの初期化
if( DxLib_Init() < 0 ) return -1 ;
// 画像を読み込み
GrHandle = LoadGraph( "Test1.bmp" ) ;
// 画像のサイズを取得する
GetGraphSize( GrHandle, &GrWidth, &GrHeight ) ;
// 2倍に拡大したグラフィックハンドルを作成する
Size2GrHandle = CreateScalingGraphHandle( GrHandle, GrWidth * 2, GrHeight * 2 ) ;
// 元のグラフィックハンドルを削除する
DeleteGraph( GrHandle ) ;
// 描画先を裏画面にする
SetDrawScreen( DX_SCREEN_BACK ) ;
// 2倍に拡大した画像を描画する
DrawGraph( 0, 0, Size2GrHandle, TRUE ) ;
// 裏画面の内容を表画面に反映
ScreenFlip() ;
// キー入力待ち
WaitKey() ;
// 2倍に拡大したグラフィックハンドルを削除する
DeleteGraph( Size2GrHandle ) ;
// DXライブラリの後始末
DxLib_End() ;
// ソフトの終了
return 0 ;
}