作者kikiqqp (猫食罐头)
看板C_and_CPP
标题Re: [问题] 灰阶转二进位
时间Sat Feb 14 09:32:19 2009
※ 引述《k1233479 (Mary)》之铭言:
: 小弟写BCB遇到一些问题
: 我读进一张256*256的图片後
: 把它设成pf8bit的型态去做error diffusion
: 做完後只剩255跟0这两种
: 於是想转成BINARY的型态来储存
: 就写了
: if(变数 == 255)
> 这样就好
: BINARY的bit就设1
: else
: BINARY的bit就设0
: 可是他说我写入超出范围
: 想知道一下为什麽@@
: 还有可以教一下怎存成pf1bit吗xddd
: 感谢!!!!!!
用TrackBar自订阀直的写法
Graphics::TBitmap *Bmp1 = new Graphics::TBitmap();
Byte *ptr;
int gray, i ,j;
Bmp1->Assign(Image1->Picture->Bitmap); //读入
for(j = 0; j < Bmp1->Height; j++)
{
ptr = (Byte*)Bmp1->ScanLine[j];
for(i = 0; i < Bmp1->Width; i++)
{
gray = ptr[i];
if (gray > TrackBar1->Position) // 自订变数
{
ptr[i] = 255;
}
else
{
ptr[i] = 0;
}
}
}
Image2->Picture->Assign(Bmp1); // 放在新图上
delete Bmp1;
}
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 122.116.48.135
1F:推 k1233479:感谢K大 问题解决了 谢谢XDDDD 02/16 00:59