想用C#实现图片的放大缩小,并且可以移动,之后的图片可以进行矩形框的裁剪 5

就是移动和缩放之后是在paint事件里重绘,所以得不到那个新绘制的图像,然后截不了图,怎么处理,才可以。上代码:privatevoidpictureBox1_Paint(... 就是移动和缩放之后是在paint事件里重绘,所以得不到那个新绘制的图像,然后截不了图,怎么处理,才可以。上代码:
private void pictureBox1_Paint(object sender, PaintEventArgs e)
{
Graphics g = e.Graphics;
if (IsLoadBmp)
{
Rectangle rect = new Rectangle(0, 0, bmp.Width, bmp.Height);
rect.X = newPoint.X;//移动之后的坐标
rect.Y = newPoint.Y;
rect.Width = (int)(rect.Width * img.scale);//缩放后的宽高
rect.Height = (int)(rect.Height * img.scale);
g.FillRectangle(Brushes.Silver, pictureBox1.ClientRectangle);
g.DrawImage(bmp, rect, new Rectangle(0, 0, bmp.Width, bmp.Height), GraphicsUnit.Pixel);

}
}
展开
 我来答
ashlll0
2015-08-27 · TA获得超过929个赞
知道小有建树答主
回答量:1354
采纳率:81%
帮助的人:551万
展开全部
移动缩放后加上这个试试
pictureBox1.Invalidate();
追问
我可以缩放和移动,但是之后要对这个图片进行截图操作,但是因为他每次都是在picbox1重新绘制的,所以原来那个图片没发生变化,截图还是在原图上,没有在新移动和缩放的图上截取,怎么才能解决在新的图片上截图。。。
追答
你试试这么存
Rectangle rect1 = new Rectangle(0, 0, bmp.Width, bmp.Height);
pictureBox9.DrawToBitmap(bmp,rect1 );
bmp.Save("C:/1.bmp", System.Drawing.Imaging.ImageFormat.Bmp);
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式