1、判断位图的像素格式:
var
bit: TBitmap;
pix: TPixelFormat;
s: string;
begin
bit := TBitmap.Create;
bit.LoadFromFile('c:\temp\test.bmp'); //位图路径
pix := bit.PixelFormat;
s := '';
case pix of
pfDevice: s := 'Device'; {设备支持的像素格式}
pf1bit: s := '1bit';
pf4bit: s := '4bit';
pf8bit: s := '8bit';
pf15bit: s := '15bit';
pf16bit: s := '16bit';
pf24bit: s := '24bit';
pf32bit: s := '32bit';
pfCustom: s := 'Custom'; {其他格式}
end;
ShowMessage(s);
bit.Free;
end;
2、位图的像素格式转换:
var
bit: TBitmap;
begin
bit := TBitmap.Create;
bit.LoadFromFile('c:\temp\test.bmp');
bit.PixelFormat := pf4bit;
bit.SaveToFile('c:\temp\test2.bmp');
bit.Free;
end;
3、按指定的像素格式保存位图:
var
bit: TBitmap;
begin
bit := Self.GetFormImage; //把窗体客户区获取为图像, 无须 bit := TBitmap.Create;
bit.PixelFormat := pf1bit;
bit.SaveToFile('c:\temp\test.bmp');
bit.Free; //但要释放
end;