请问各位谁有关于图像伪彩的代码,急需
解决方案 »
- 截取窗体部分地方作为图片保存的代码
- 感觉DELPHI的BUG很多呀,大家来讨论一下,来者有分
- 如何清空一个字符串,并且判断一个字符串是否为空?
- delphi可不可以调用Excel,如果可以,要怎么调呢?
- 為何我把memo當中的內容存入mssql數據庫會出現以下問題
- 请帮忙!! win2000下 delphi label 组件显示的字体右面少半个!!!
- 不会安装,我真的想哭!
- 如何删除文本文件中的某一行?
- 一个关于类型文件的问题请教斑竹
- 如何用Delphi编程读出一个DLL文件的版本号,请给示例
- 当DataSource的记录数超过50条DBGrid控件不显示是怎么回事?
- TrackBar 及一个算法,300分求帮助解决!不够另加!!!
I,J,uG :Integer;
P :PByteArray;
begin
Bmp :=TBitmap.Create;
Bmp.Assign(Image.Picture.Bitmap);
for J :=0 to Bmp.Height-1 do
begin
P :=Bmp.ScanLine[J];
for I :=0 to Bmp.Width-1 do
begin
uG :=P[3*I];
if (0<=uG) and (uG<63) then //灰度------>伪彩色
begin
P[3*I+2] :=0;
P[3*I+1] :=254-4*uG;
P[3*I] :=255;
end;
if (64<=uG) and (uG<127) then
begin
P[3*I+2] :=0;
P[3*I+1] :=4*uG-254;
P[3*I] :=510-4*uG;
end;
if (128<=uG) and (uG<191) then
begin
P[3*I+2] :=4*uG-510;
P[3*I+1] :=255;
P[3*I] :=0;
end;
if (192<=uG) and (uG<=255) then
begin
P[3*I+2] :=255;
P[3*I+1] :=1022-4*uG;
P[3*I] :=0;
end;
end;
end;
Image.Picture.Bitmap.Assign(Bmp);
Bmp.Free;
end;