C# copy вставьте область изображения в другое изображение

Я пытаюсь написать служебный класс, который позволяет автоматическое изменение размера изображений, которые являются tilebale. Предположим, существует srcBitmap, из которого я копирую область, заданную прямоугольником srcRegion. Затем я хочу вставить (пиксельную информацию) эту область в другое изображение, называемое Bitmap destBitmap, в прямоугольник области назначения destRegion. Я знаю, как получить регион из источника и поместить его в растровый объект, но я еще не смог найти, как на самом деле вставить растровое изображение объект в определенной области, внутри другого, большего растрового объекта.

есть ли быстрый способ сделать это? (без GDI и без углубления в массив байтов растровых изображений). Вот фрагмент, который должен прояснить мою цель

    private static void CopyRegionIntoImage(Bitmap srcBitmap, Rectangle srcRegion, Bitmap destBitmap, Rectangle destRegion)
    {
        // get the required region from the destination
        Bitmap region = Copy(srcBitmap, srcRegion);
    }

1 ответов


используйте этот :

    public static void CopyRegionIntoImage(Bitmap srcBitmap, Rectangle srcRegion,ref Bitmap destBitmap, Rectangle destRegion)
    {
        using (Graphics grD = Graphics.FromImage(destBitmap))            
        {
            grD.DrawImage(srcBitmap, destRegion, srcRegion, GraphicsUnit.Pixel);                
        }
    }