p对象中 GetScreen(Bmp);
//将 Bmp对象中的图像保存至内存流中
Bmp.SaveToStream(CompressedStream);
//按缺省的压缩比例对原始图像流进行压缩
CompressBitmap(CompressedStream, clDefault);
//将压缩之后的图像流保存为自定义格式的文件
CompressedStream.SaveToFile(‘ C:\cj.dat’ );
finally
Bmp.Free;
CompressedStream.Free;
end;
end;
5.解压缩按钮 OnClick事件
procedure TForm1.Button2Click(Sender: TObject);
var
CompressedStream: TFileStream;
Bmp: TBitmap;
begin
Bmp := TBitmap.Create;
//以文件流的只读方式打开自定义的压缩格式文件
CompressedStream := TFileStream.Create(‘ C:\cj.dat’ , fmOpenRead);
Try
//将被压缩的图像流进行解压缩
UnCompressBitmap(CompressedStream, Bmp);
//将原始图像流还原为指定的 BMP文件
Bmp.SaveToFile(‘ C:\cj.bmp’ );
finally
Bmp.Free;
CompressedStream.Free;
end;
end;
此外 TCompressionStream对象还提供了 CompressionRate属性,该属性用于描述对原始数据进行压缩后的压缩比率,而 OnProgress事件在压缩与解压缩过程中都会被触发,开发人员可以在该事件中编写用于显示进度的代码。
以上代码在 Delphi 5.0中调试运行通过。