C #, скопировать часть одной Bitmap в другую - C#

Узнай цену своей работы

Формулировка задачи:

Подскажите, люди добрые, не оставте в печали, пожалуйста. Имею наглое желание скопировать изображение размером 100х100 из Bitmap Background(600,600) в Bitmap Copia(100,100). Возможно ли использование Bitblt для этой цели, и если возможно, то каким образом? Не знаю как «прицепиться» к Background, поскольку GetHdc ссылку на память не даёт. Если Bitblt не работает, то какими средствами возможно осуществить желаемое? Заранее признателен.

Решение задачи: «C #, скопировать часть одной Bitmap в другую»

textual
Листинг программы
BitmapData bmpData = bmp.LockBits(new Rectangle(0, 0, bmp.Width, bmp.Height), ImageLockMode.ReadWrite, bmp.PixelFormat);
byte[] rgb = new byte[bmpData.Stride * bmpData.Height];
Marshal.Copy(bmpData.Scan0, rgb, 0, rgb.Length);
далее по индексам 0 - B 1 - G 2 - R 3 если есть A и т.д.
Marshal.Copy(rgb, 0, bmpData.Scan0, bmpData.Stride * bmpData.Height);
bmp.UnlockBits(bmpData);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.067 из 5
Похожие ответы