Я хочу обрезать растровое изображение с помощью этой функции, но растровое изображение может быть меньше, чем область обрезки, поэтому я хочу увеличить растровое изображение в этом случае.
В качестве примера у меня есть растровое изображение размером 200x250, и если я использую метод CropBitmap с 250x250, я получаю ошибку нехватки памяти. Он должен вернуть растровое изображение с размером 250x250, где недостающие левые 50px заполнены белым.
Как мне этого добиться?
public Bitmap CropBitmap(Bitmap bitmap, int cropX, int cropY, int cropWidth, int cropHeight)
{
var rect = new Rectangle(cropX, cropY, cropWidth, cropHeight);
if(bitmap.Width < cropWidth || bitmap.Height < cropHeight)
{
// what now?
}
return bitmap.Clone(rect, bitmap.PixelFormat);
}