现在CSDN,连星星、钻石都成了灰色了。
本人特换上了黑白头像

解决方案 »

  1.   

    附上把彩色Bitmap转化为灰色的代码,如果要改头像,可以直接用就可以了:procedure GrayBitmap(Bit: TBitmap);
    var
      i, j, iRGB: Integer;
      R, G, B: Byte;
    begin
      for i := 0 to Bit.Width - 1 do
        for j := 0 to Bit.Height - 1 do
        begin
          iRGB := ColorToRGB(Bit.Canvas.Pixels[i, j]);
          R := GetRValue(iRGB);
          G := GetGValue(iRGB);
          B := GetBValue(iRGB);
          R := (R + G + B) div 3;
          Bit.Canvas.Pixels[i, j] := TColor(RGB(R, R, R));
        end;
    end;
    例子:
    procedure TForm1.Button1Click(Sender: TObject);
    var
      Bit: TBitmap;
    begin
      Bit := TBitmap.Create;
      try
        Bit.LoadFromFile('D:\1.bmp');
        GrayBitmap(Bit);
        Bit.SaveToFile('D:\灰色.bmp');
      finally
        Bit.Free;
      end;
    end;