C语言中调用bmp图片时能否设置图片显示的大小与位置?最好有直接可以使用的函数!

2024-11-15 23:32:35
推荐回答(3个)
回答1:

1.使用MFC相关的控件或者用GDI+的类加载bmp图片大小实现缩放功能(比较简单),参考下面代码

//建立图形对象 
Graphics mGraphics( dc.GetSafeHdc() );
//装入图像文件
Image img( L"./res/test.jpg", TRUE );
//在指定区域pdestPoints显示图像
/*//根据背景大小按比例缩放
CRect rcClient;
GetClientRect( &rcClient );

BOOL bWidth = rcClient.Width() / img.GetWidth() > rcClient.Height() / img.GetHeight();
if ( bWidth )
{
   mGraphics.DrawImage( &img, 0, 0, rcClient.Width(), rcClient.Width() * img.GetHeight() / img.GetWidth() );
}
else
{
   mGraphics.DrawImage(&img, 0, 0, rcClient.Height() * img.GetWidth() / img.GetHeight(), rcClient.Height() );
}

2.自己实现

搜索双线性插值或者三线性插值算法,搞明白再写代码

回答2:

直接按照bmp图片格式在需要的地方打点显示

回答3:

dos下嵌入式还是windows中?