首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > VC >

pictureBox中怎么保存截取图片

2012-04-23 
pictureBox中如何保存截取图片平台是VS2005 CLR我的pictureBox控件的sizemode的属性设置为CenterImageRect

pictureBox中如何保存截取图片
平台是VS2005 CLR
我的pictureBox控件的sizemode的属性设置为CenterImage
  Rectangle^ rect = gcnew Rectangle(0,0,r-l,b-t); //l,t,r,b 分别为鼠标按下和抬起时候的X、Y坐标
  Bitmap^ bmp = gcnew Bitmap(r-l,b-t);
  pictureBox->DrawToBitmap(bmp,* rect);
  Graphics^ graphic = Graphics::FromImage(bmp);
  graphic->DrawImage(pictureBox->Image,l ,t,*rect, GraphicsUnit::Pixel);
  pictureBox->Image=bmp;
  bmp->Save("C:\\a.jpg",System::Drawing::Imaging::ImageFormat::Jpeg);
 
  但是我截取后得到的图片明显和我矩形框的区域不符合,听别人说是需要进行坐标的变换,将此区域左上角在picturebox中的坐标转换到图像坐标中,左上角对应哪个像素,将此区域的宽和高转换到图像坐标,即宽和高分别覆盖到多少像素,然后新建一个bitmap。
但是我还是不知道如何去做,希望高手能够举个例子,谢谢

[解决办法]
PictureBox.saveimage

savePicture慢慢琢磨
[解决办法]
位置不对的话是不是这个方法再搞鬼?
ScreenToClient(hwnd,&pt);

热点排行