好吧,这是一个奇怪的。巨大的道具给知道这一点的人。位图对象将rgb(13,11,12)变成rgb(211,211,211)?
我有这段代码,它会播下图像的一部分,并将它放入bmpCropped
。
void CropImage()
{
int W = nowX - StartX;
int H = nowY - StartY;
if (W > 0 && H > 0)
{
bmpCropped = new Bitmap(W, H);
Graphics gfxCropped = Graphics.FromImage(bmpCropped);
gfxCropped.DrawImage(bmpOriginal, new Rectangle(0, 0, W, H), new Rectangle(StartX, StartY, W, H), GraphicsUnit.Pixel);
}
}
一些奇怪的原因,具有的RGB值为R所有颜色:13,G:11,B:12被改变为R:211,G:211,B:211。注意DrawImage? bmpCropped绘制在屏幕上,我根本没有看到211,211,211。但如果我使用bmpCropped.Save(...)保存图像,我看到了211,211,211。
任何人有任何线索,为什么会发生这种情况,如果我能解决这个问题而不改变像素到不同的颜色?
你保存在什么格式? – casablanca 2010-12-13 20:02:09
它发生在jpg和png中。 – Codecat 2010-12-13 20:05:01
我也尝试过其他色彩组合,如11,12,13,但实际上只有13,11,12。没有其他的。 – Codecat 2010-12-13 20:05:33