关于图片放大的问题 假设我有一张图片是 2000x2000, 要求放大5倍。如果我将图片分成四块,都是1000x1000,然后各自放大5倍,变成四块5000x5000。将这四大块拼在一起,得到的图片是不是跟直接放大的效果一样? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 图片需要放大时要打印一些微型点阵,在dpi=2400的打印机中实现,所以一幅通过扫描仪扫描的图片一般dpi=300已经是很多了,要放大8倍才能得到需要的打印图,以下是我实现的代码: HBITMAP hbitmap; hbitmap=(HBITMAP)::LoadImage(NULL,_T("f:\\temp\\face.bmp"),IMAGE_BITMAP,0,0,LR_LOADFROMFILE); if(hbitmap) { CBitmap bmp1,bmp2; bmp1.Attach(hbitmap); CDC dc; dc.Attach(::GetDC(NULL)); CDC memdc1,memdc2; if(memdc1.CreateCompatibleDC(&dc) && memdc2.CreateCompatibleDC(&dc) && bmp2.CreateCompatibleBitmap(&dc,w,h)) { CBitmap *oldbitmap1,*oldbitmap2; oldbitmap1=memdc1.SelectObject(&bmp1); oldbitmap2=memdc2.SelectObject(&bmp2); memdc2.StretchBlt(0,0,w,h,&memdc1,0,0,bih.biWidth,bih.biHeight,SRCCOPY); memdc2.SelectObject(oldbitmap2); memdc2.DeleteDC(); memdc1.SelectObject(oldbitmap1); memdc1.DeleteDC(); bmp2.Detach(); bmp1.Detach(); } 上面代码的问题是这个函数:bmp2.CreateCompatibleBitmap(&dc,w,h);当w,h比较大时,会返回错误码为8。 CTabCtrl::GetCurSel() 返回值不确定是为什么? 请问如何通过程序进程的HANDLE得到这个程序的m_pMainWnd??? 请教各位一个输出子集的问题 我要做一个医疗管理系统,有些问题,请各位大虾进来看看,100分,不够再加 做个人事数据库管理系统,兄弟们给点意见!! 超级简单问题:如何把char[20]类型转成CString类型? 哪能找到这些资料 如何设置墙纸 怎么插入动画图片! 用DirectShow在vc中做一ActiveX控件来播放文件,怎么连接出错?请高手帮忙啊! vc添加ocx控件 关于U盘数据读取
HBITMAP hbitmap;
hbitmap=(HBITMAP)::LoadImage(NULL,_T("f:\\temp\\face.bmp"),IMAGE_BITMAP,0,0,LR_LOADFROMFILE);
if(hbitmap)
{
CBitmap bmp1,bmp2;
bmp1.Attach(hbitmap); CDC dc;
dc.Attach(::GetDC(NULL)); CDC memdc1,memdc2;
if(memdc1.CreateCompatibleDC(&dc) && memdc2.CreateCompatibleDC(&dc) && bmp2.CreateCompatibleBitmap(&dc,w,h))
{
CBitmap *oldbitmap1,*oldbitmap2;
oldbitmap1=memdc1.SelectObject(&bmp1);
oldbitmap2=memdc2.SelectObject(&bmp2);
memdc2.StretchBlt(0,0,w,h,&memdc1,0,0,bih.biWidth,bih.biHeight,SRCCOPY); memdc2.SelectObject(oldbitmap2);
memdc2.DeleteDC();
memdc1.SelectObject(oldbitmap1);
memdc1.DeleteDC();
bmp2.Detach();
bmp1.Detach();
}
上面代码的问题是这个函数:bmp2.CreateCompatibleBitmap(&dc,w,h);当w,h比较大时,会返回错误码为8。