Re[6]: Обработка изображений
От: GePo  
Дата: 19.03.06 17:57
Оценка:
Здравствуйте, Powerz, Вы писали:

P>
            case ProcessingType.PerPixelUnsafe:
P>                    BitmapData bmData = pic.LockBits(new Rectangle(0, 0, pic.Width, pic.Height), 
P>                        ImageLockMode.ReadWrite, PixelFormat.Format24bppRgb); 
P>                    IntPtr scan = bmData.Scan0; 
                    
P>                    unsafe 
P>                    { 
P>                        byte* p = (byte*)scan;
P>                        byte red;
P>                        byte green;
P>                        byte blue;

P>                        for (int y = 0; y < pic.Height; y++)
P>                        {
P>                            for (int x = 0; x < pictureWidth; x++)
P>                            {
P>                                blue  = p[0];
P>                                green = p[1];
P>                                red   = p[2];
P>                                p[0]  = p[1] = p[2] = (byte)(.299 * red + .587 * green + .114 * blue);
P>                                p += 3;
P>                            }
P>                        }
P>                    }
P>                    pic.UnlockBits(bmData);
P>                    break;
P>            }
P>            return pic;
P>        }
P>


именно вот в этом случае у меня проблема с цветами. Может там какие-нибудь дополнительные параметры для битмапа задавать надо?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.