关于bmp图像的打开保存语句的基础问题(100分)

A

aming46

Unregistered / Unconfirmed
GUEST, unregistred user!
我现在想实现这样一个功能:给定初始的bmp图像,要生成一个新图,
要新图就是更改原图的数据段大小和内容而来。
我想现在是这样做的:打开原图,内存映射,中新开一块新图大小的内存,
把原图的内存映射复制过来,做自己想要实现的修改,然后就不会了!!
后面该用什么语句实现新图的显示和储存呢??

 
用两个 TBitmap 搞定
 
procedure TForm1.Button1Click(Sender: TObject);
var
Mybmp:TBitmap;
i,j:integer;
ResArr:array of array of Tcolor;
begin
Mybmp:=TBitmap.Create;
Mybmp.LoadFromFile('c:/play.bmp');
SetLength(ResArr,Mybmp.Height,Mybmp.Width);
//操作部分
{for i:=0 to Mybmp.Width-1 do
for j:=0 to Mybmp.Height-1 do
begin
if Mybmp.Canvas.Pixels[i,j]<>clwhite then
Mybmp.Canvas.Pixels[i,j]:=clblack;
end;}
Mybmp.SaveToFile('c:/black.bmp');
Mybmp.Free;
 
动态创建bmp。然后用bmp.canvas.pixels[x,y]或者scanline等方法进行图象处理
 
多人接受答案了。
 
顶部