c#画图 放大,缩小

2024年11月15日 18:37
有2个网友回答
网友(1):

楼上那是放大缩小图片么??那只是在大小不同的矩形里画图罢了,

Graphics有个变换矩阵的属性:
Graphics.Transform

相应的方法有:
Graphics.RenderingOrigin// 变换中心属性
Graphics.ResetTransform();// 重置变换矩阵
Graphics.TranslateTransform();// 平移变换
Graphics.RotateTransform();// 旋转变换
Graphics.ScaleTransform();// 缩放变换

网友(2):

//建立图片对象,并读取图片文件
Bitmap myBitmap = new Bitmap("pic.bmp");
//定义扩大后的显示矩形区域
Rectangle expansionRectangle = new Rectangle(135, 10,
(int)((double)myBitmap.Width*1.5),(int)((double)myBitmap.Height*1.5));
//定义缩小后的显示矩形区域
Rectangle compressionRectangle = new Rectangle(300, 10,
myBitmap.Width / 2, myBitmap.Height/2);
//定义图片对象
Graphics myGraphics;
//创建窗体的图片对象
myGraphics=this.CreateGraphics();
//绘制原图
myGraphics.DrawImage(myBitmap, 10, 10);
//绘制放大的图片
myGraphics.DrawImage(myBitmap, expansionRectangle);
//绘制缩小后的图片
myGraphics.DrawImage(myBitmap, compressionRectangle);