BufferedImage.getRGB C#等价物?
问题描述:
嗨我想从C#中转换Java应用程序,这是我唯一的问题..: 旁注:该位图类是我所做的一个类。BufferedImage.getRGB C#等价物?
Java代码:
for (int x = 0; x < xTiles; x++) {
for (int y = 0; y < yTiles; y++) {
result[x][y] = new Bitmap(w, h);
bi.getRGB(bx + x * w, by + y * h, w, h,
result[x][y].pixels, 0, w);
}
}
我在C#什么:
for (int X = 0; X < XTiles; X++)
{
for (int Y = 0; Y < YTiles; Y++)
{
Result[X,Y] = new Bitmap(W, H);
}
}
,但我不能似乎找到方法或HOWTO做,在C#(的getRGB)。它是唯一阻止我需要做的工作。谢谢!
答
如果您创建了一个Bitmap对象,则可以使用bitmap.GetPixel(int x,int y)来获取给定{x,y}坐标的Color(结构)。
您也可以使用bitmap.SetPixel(int x,int y,Color color)设置颜色。
如果你需要快速做这些像素操作,那么谷歌“LockBits”。
编辑:
哦,位图是你自己定制的类吗?
改为使用System.Drawing.Bitmap,您将可以访问我指定的方法。
编辑2:
呀,相当于BufferedImage的是System.Drawing.Bitmap,所以你可能需要重命名你的定制 C#Bitmap类(或没有)。
你没有告诉我们在java例子中bi是什么... 小心分享? – 2012-02-23 04:31:06
噢,BufferedImage/facepalm – 2012-02-23 04:33:41
这是我的错/ facepalm – user1227439 2012-02-23 04:35:59