如何实现附件->“画图”中将图片某部分剪裁后任意拖动放置 如题,,,高手帮忙指导下。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 CBitmap bmp;int x1,y1,x2,y2; CDC memdc; BITMAP bm; memdc.CreateCompatibleDC(NULL); bmp.m_hObject = (HBITMAP)LoadImage(NULL,"F:\\software\\19.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE); bmp.GetObject(sizeof(bm),&bm); memdc.SelectObject(bmp);pDC->StretchBlt(0,0,x2-x1,y2-y1,&memdc,x1,y1,x2-x1,y2-y1,SRCCOPY);你自己计算选中的区域位置就好了,代码我没调试过,可能有问题,但大致就是这样了 就是把那个截取的部分每次拖动后Mouseup事件里把它给画到dc上的新位置。可以用两个内存dc,一个保存你最初画的图片。 截取一块后把被截的那块给用白色填充。另一个保存截取部分图片;MouseUp时,先按第一个内存dc的内容重画整个dc;再把第二个内存dc的内容在拖放的位置画出来。 请大家帮我看下,我这个是那里写错了(喜欢这个所以在自学) 如何使用char buf[]来创建GDI+的 Bitmap对象 使用vc读取unicode文本文件的问题? 监听本机的固定IP端口数据,类似sniffer 为什么总有一些应答接收不到? 如何在程序中实现禁用DirectShow象dxdiag那样,急,多谢了! 请问谁使用过Realsystem SDK? 一起来来交流交流 开发MFC的多线程软件一般用什么模型比较好? 如何在删除memdc上的线时不把背景也删掉 栈内存对齐问题 字符串后如何加一个回车键 求 判断点是否在 凸多边形外的算法 ...
CBitmap bmp;
int x1,y1,x2,y2;
CDC memdc;
BITMAP bm;
memdc.CreateCompatibleDC(NULL);
bmp.m_hObject = (HBITMAP)LoadImage(NULL,"F:\\software\\19.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE); bmp.GetObject(sizeof(bm),&bm);
memdc.SelectObject(bmp);
pDC->StretchBlt(0,0,x2-x1,y2-y1,&memdc,x1,y1,x2-x1,y2-y1,SRCCOPY);你自己计算选中的区域位置就好了,代码我没调试过,可能有问题,但大致就是这样了
另一个保存截取部分图片;
MouseUp时,先按第一个内存dc的内容重画整个dc;再把第二个内存dc的内容在拖放的位置画出来。