Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
c#.NET-使用锁定位提取原始像素数据_C#_.net_Lockbits - Fatal编程技术网

c#.NET-使用锁定位提取原始像素数据

c#.NET-使用锁定位提取原始像素数据,c#,.net,lockbits,C#,.net,Lockbits,我正在制作一个程序来自动对图像进行某些编辑 其中一个功能是将“白色”像素转换为“白色”透明像素。起初,一切都很好 我已成功地将24bppRGB图像转换为32bppRGB图像,所需像素全部透明 图像加载到picturebox中,保存后即可打开 当我试图重新编辑文件时,问题出现了。当我再次尝试提取原始像素数据时,什么也没有得到。据我所知,整个像素数据阵列是0 为什么会这样 ^这是我的主要问题。 除了这个问题,我还注意到了这个程序的一些怪癖,这些都是出于好奇: 这两者之间的区别是什么: for(int

我正在制作一个程序来自动对图像进行某些编辑

其中一个功能是将“白色”像素转换为“白色”透明像素。起初,一切都很好

我已成功地将24bppRGB图像转换为32bppRGB图像,所需像素全部透明

图像加载到picturebox中,保存后即可打开

当我试图重新编辑文件时,问题出现了。当我再次尝试提取原始像素数据时,什么也没有得到。据我所知,整个像素数据阵列是0

为什么会这样

^这是我的主要问题。 除了这个问题,我还注意到了这个程序的一些怪癖,这些都是出于好奇:

这两者之间的区别是什么:

for(int i = 0; i < (x + 1); i += y)
for(int i = 0; i < (x + 1); i += y)
for(int i=0;i<(x+1);i+=y)

for(inti=0;i是一个小技巧,包括如何轻松使用位图的示例

p、 美国之间的差异:

for(int i = 0; i < (x + 1); i += y)
for(int i = 0; i < (x + 1); i += y)
for(int i=0;i<(x+1);i+=y)


用于(int i=0;打开32bppARGB图像时,我可能是调用LockBits时的
PixelFormat
不匹配?我在您的问题中添加了代码格式,但是
循环的第二组
作为一个问题没有意义,您可能需要澄清。嗯,我尝试使用bmp.PixelFormat以及PixelFormat.Format32bppArgb生成了一个图像。这很奇怪,bmp.PixelFormat肯定能工作。你能把一个32bpp的图像上传到某个地方让我看看吗?
for(int i = 0; i < (x + 1); i += y)
for(int i = 0; i <= (x); i += y)