如何获取BMP图片某一位置的颜色
如何获取BMP图片上某一位置点的颜色?
[解决办法]
dim xxx as Bitmap
dim yyy as Color
xxx=Image.FromFile( "文件路径 ")
yyy=xxx.GetPixel(x坐标,y坐标)
[解决办法]
Bitmap.GetPixel 方法
获取此 Bitmap 中指定像素的颜色。
命名空间:System.Drawing
C#
public Color GetPixel (
int x,
int y
)
参数
x
要检索的像素的 x 坐标。
y
要检索的像素的 y 坐标。
返回值
Color 结构,它表示指定像素的颜色。
下面的代码示例设计用于 Windows 窗体,它需要 PaintEventArgse(这是 Paint 事件处理程序的参数)。此代码获取位图中像素的颜色,然后用该颜色填充一个矩形。
public void GetPixel_Example(PaintEventArgs e)
{
// Create a Bitmap object from an image file.
Bitmap myBitmap = new Bitmap( "Grapes.jpg ");
// Get the color of a pixel within myBitmap.
Color pixelColor = myBitmap.GetPixel(50, 50);
// Fill a rectangle with pixelColor.
SolidBrush pixelBrush = new SolidBrush(pixelColor);
e.Graphics.FillRectangle(pixelBrush, 0, 0, 100, 100);
}
[解决办法]
Dim BmpFileName As String = "C:\111.bmp " 'BMP文件的路径
Dim TheBmp As New Bitmap(BmpFileName)
Dim x As Integer = TheBmp.Width / 2, y As Integer = TheBmp.Height / 2 '中心点坐标
Dim Red As Integer = CInt(TheBmp.GetPixel(x, y).R)
Dim Green As Integer = CInt(TheBmp.GetPixel(x, y).G)
Dim Blue As Integer = CInt(TheBmp.GetPixel(x, y).B)
Dim TheColor As Color = Color.FromArgb(Red, Green, Blue) '中心点的颜色