GDI+关于图片宽度的一个小问题
代码如下:
System.Drawing.Bitmap bmp = new Bitmap(Server.MapPath("aa.jpg"));
for (int num1 = 0; num1 < bmp.Height; num1++)
{
for (int num2 = 0; num2 < bmp.Width; num2 = num2 + 2)
{
bmp.SetPixel(num2,num1,System.Drawing.Color.Black);
}
num1 = num1 + 1;
for (int num3 = 1; num3 < bmp.Width; num3 = num3 + 2)
{
bmp.SetPixel(num3,num1,System.Drawing.Color.Black);//这里是出错的地方
}
}
bmp.Save(this.Response.OutputStream,System.Drawing.Imaging.ImageFormat.Jpeg);
上面的代码,编译时可以正常通过,但打开页面时,系统提示:“使用了无效参数”就是代码上标记的地方出错,我用断点根踪num3的值时发现,它总在最后一次循环提示"num3值无效",也就是,在执行它下面的代码bmp.SetPixel(num3,num1,...)时最后一次循环时num3是一个无效的图片x值,可为什么呢,我把"int num3 = 1; num3 < bmp.Width; num3 = num3 + 2"中的“bmp.Width”换成一个具体小于图片宽度的实际值,10,错误依旧,依然是最后一次循环时出错,而实际用的图片宽度是350,郁闷了,搞不清怎么回事,可为什么前面类拟的代码就可以执行呢,就是num2,num1的就是正常的。
System.Drawing.Bitmap bmp = new Bitmap(Server.MapPath("aa.jpg"));
for (int num1 = 0; num1 < bmp.Height; num1++)
{
for (int num2 = 0; num2 < bmp.Width; num2 = num2 + 2)
{
bmp.SetPixel(num2,num1,System.Drawing.Color.Black);
}
num1 = num1 + 1;
for (int num3 = 1; num3 < bmp.Width; num3 = num3 + 2)
{
bmp.SetPixel(num3,num1,System.Drawing.Color.Black);//这里是出错的地方
}
}
bmp.Save(this.Response.OutputStream,System.Drawing.Imaging.ImageFormat.Jpeg);
上面的代码,编译时可以正常通过,但打开页面时,系统提示:“使用了无效参数”就是代码上标记的地方出错,我用断点根踪num3的值时发现,它总在最后一次循环提示"num3值无效",也就是,在执行它下面的代码bmp.SetPixel(num3,num1,...)时最后一次循环时num3是一个无效的图片x值,可为什么呢,我把"int num3 = 1; num3 < bmp.Width; num3 = num3 + 2"中的“bmp.Width”换成一个具体小于图片宽度的实际值,10,错误依旧,依然是最后一次循环时出错,而实际用的图片宽度是350,郁闷了,搞不清怎么回事,可为什么前面类拟的代码就可以执行呢,就是num2,num1的就是正常的。
...全文
相关推荐
MFC GDI+缩放图片示例
在MFC中集成GDI+,可以实现更丰富的图形用户界面。在这个“MFC GDI+缩放图片示例”中,我们将探讨如何使用MFC与GDI+结合来动态地调整图像的大小,即缩放图片。
GDI技术实现图片缩放
本文还有配套的精品资源,点击获取 简介:在Windows编程中,GDI允许开发者进行图形、文本和图像绘制。本示例展示如何运用GDI技术实现图片的放大和缩小功能,这对于GUI应用程序开发尤其重要。基本步骤包括加载图片,创建设备上下文,选择位图,应用图像缩放算法,并进行重绘。使用最近邻插值和双线性插值是常见的缩放技术。为了优化性能,应当注意合理选择插值算法并避免不必要的内存拷贝...
【GDI+】多张图片按顺序上下无缝组合-易语言
这需要遍历所有图片,获取每张图片的宽度和高度,然后根据拼接方式(这里是上下拼接)计算出最终图像的尺寸。在这个过程中,可能会涉及到一些数学计算,例如累加宽度和高度,以及处理可能存在的图片间隙问题。
GDI+多张图片合为一张图片
此外,还需要注意内存管理和异常处理等问题,以确保程序的健壮性和稳定性。对于开发者而言,掌握这些细节将有助于更好地利用GDI+来处理图像相关的任务。
GDI+在窗口中显示图片
在这个工程中,我们将探讨如何在Windows对话框中利用GDI+来显示图片。首先,我们需要了解GDI+的基本组件。


