aspを使用します.Netは画像の色を灰色のように変えてカラーになります

1523 ワード

最近、奇抜なマネージャーは奇抜な需要を提出して、ウェブサイトの上で画像の色を変えることができて、例えば灰色の色になって、色の灰色になって、ニマのスレ主の感じはあなた达は分かりません!すると次のコードがありました.
使用法:updateを呼び出す_pixelColorメソッドパラメータを伝達すればよい

#region        

///  
///         
///  
///         
///      ,true   ,false    
public void update_pixelColor(string filePath, bool colorIndex) 
{ 
Bitmap bmp = new Bitmap(Bitmap.FromFile(filePath)); 

int value = 0; 

for (int i = 0; i < bmp.Height; i++) 
{ 
for (int j = 0; j < bmp.Width; j++) 
{ 
if (colorIndex) 
value = this.GetGrayNumColor(bmp.GetPixel(j, i)); 
else 
value = this.GetHongNumColor(bmp.GetPixel(j, i)); 

bmp.SetPixel(j, i, Color.FromArgb(value, value, value)); 
} 
} 

bmp.Save(filePath); 
} 

///  
///          
///  
///      
/// int 
private int GetHongNumColor(Color posClr) 
{ 
return (posClr.R * 19595 + posClr.G * 38469 + posClr.B * 7472) >> 16; 
} 

///  
///          
///  
///      
/// Color 
private int GetGrayNumColor(Color posClr) 
{ 
//   ARGB 
return (posClr.R * 19595 + posClr.G * 38469 + posClr.B * 7472) >> 16; 
} 

#endregion