参照透明度设置做吧,现在学的很皮毛
procedure TForm1.trckbr1Change(Sender: TObject);
begin //透明设置
self.AlphaBlend:= True;
Self.trckbr1.Min := 0;
Self.trckbr1.Max := 255;
Self.trckbr1.Frequency := 15;
Self.AlphaBlendValue := Self.trckbr1.Max - Self.trckbr1.Position;
end;
//亮度设置,这是Delphi的老版本的,下面是链接(RGB/亮度/对比度):
http://hi.baidu.com/83925com/item/35628733f7dfdd332e0f81f0
procedure BrightnessChange(SrcBmp,DestBmp:Tbitmap;ValueChange:integer);
var
i, j: integer;
SrcRow, DestRow: pRGBArray;
begin
// get brightness increment value
// for each row of pixels
for i := 0 to SrcBmp.Height - 1 do
begin
SrcRow := SrcBmp.ScanLine[i];
DestRow := DestBmp.ScanLine[i];
// for each pixel in row
for j := 0 to SrcBmp.Width - 1 do
begin
// add brightness value to pixel's RGB values
if ValueChange > 0 then
begin
// RGB values must be less than 256
DestRow[j].rgbtRed := Min(255, SrcRow[j].rgbtRed +ValueChange);
DestRow[j].rgbtGreen := Min(255, SrcRow[j].rgbtGreen + ValueChange);
DestRow[j].rgbtBlue := Min(255, SrcRow[j].rgbtBlue +ValueChange);
end else begin
// RGB values must be greater or equal than 0
DestRow[j].rgbtRed := Max(0, SrcRow[j].rgbtRed +ValueChange);
DestRow[j].rgbtGreen := Max(0, SrcRow[j].rgbtGreen +ValueChange);
DestRow[j].rgbtBlue := Max(0, SrcRow[j].rgbtBlue +ValueChange);
end;
end;
end;
end;