C# DrawImage
场景:关于C#的drawimage解决办法
关于C#的drawimage
我要实现截取图片的中间部分并且放大,而且放大倍数可调。比如放大为原图两倍就是将原图分为8份,截取中间的4份并且放大至原图大小,我用到了这个函数,但这个函数定义是从原图的左上角的X和Y坐标为相对位置开始计算,这样的话每选一种倍数就得重新调用一次,我想从能不能从图片的中心为相对位置开始计算呢,这样先取倍数,最后调用一次就行,或者有其他的方法么?
------解决方案--------------------
晕,这不就是一个简单的几何和算术的问题么?
中心坐标就是长/2,宽/2。
难道没有3块钱、7块钱的人民币,你就买不了3块钱、7块钱的东西了?
关于C#的drawimage
我要实现截取图片的中间部分并且放大,而且放大倍数可调。比如放大为原图两倍就是将原图分为8份,截取中间的4份并且放大至原图大小,我用到了这个函数,但这个函数定义是从原图的左上角的X和Y坐标为相对位置开始计算,这样的话每选一种倍数就得重新调用一次,我想从能不能从图片的中心为相对位置开始计算呢,这样先取倍数,最后调用一次就行,或者有其他的方法么?
//
// 摘要:
// 在指定位置并且按指定大小绘制指定的 System.Drawing.Image 的指定部分。
//
// 参数:
// image:
// 要绘制的 System.Drawing.Image。
//
// destRect:
// System.Drawing.Rectangle 结构,它指定所绘制图像的位置和大小。将图像进行缩放以适合该矩形。
//
// srcX:
// 要绘制的源图像部分的左上角的 x 坐标。
//
// srcY:
// 要绘制的源图像部分的左上角的 y 坐标。
//
// srcWidth:
// 要绘制的源图像部分的宽度。
//
// srcHeight:
// 要绘制的源图像部分的高度。
//
// srcUnit:
// System.Drawing.GraphicsUnit 枚举的成员,它指定用于确定源矩形的度量单位。
//
// 异常:
// System.ArgumentNullException:
// image 为 null。
public void DrawImage(Image image, Rectangle destRect, int srcX, int srcY, int srcWidth, int srcHeight, GraphicsUnit srcUnit);
图片
c#
------解决方案--------------------
晕,这不就是一个简单的几何和算术的问题么?
中心坐标就是长/2,宽/2。
难道没有3块钱、7块钱的人民币,你就买不了3块钱、7块钱的东西了?