この関数でビットマップをトリミングしたいのですが、ビットマップがトリミング領域より小さくなる可能性がありますので、その場合はビットマップを大きくしたいと考えています。ビットマップをトリミングし、必要に応じてサイズを拡大してください
例として、200x250のビットマップがあり、250x250のCropBitmapメソッドを使用すると、メモリ不足エラーが発生します。欠落した左の50ピクセルが白で塗りつぶされた250x250のビットマップを返します。
どうすれば実現できますか?
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);
}
これはサイズ変更の必要性に役立ちます:http://snippets.dzone.com/posts/show/4336 – ThePower