Cómo recortar y cambiar el tamaño de la imagen en un solo paso en .NET

Tengo un archivo de imagen que me gustaría recortar y redimensionar al mismo tiempo usando la clase System.Drawing

Estoy tratando de construir sobre las ideas encontradas en este artículo:http: //www.schnieds.com/2011/07/image-upload-crop-and-resize-with.htm

Puedo recortar y cambiar el tamaño por separado, pero cuando trato de combinar el proceso, obtengo resultados extraños.

Aquí es lo que he estado intentando

using (System.Drawing.Bitmap _bitmap = new System.Drawing.Bitmap(w, h))
{
    _bitmap.SetResolution(img.HorizontalResolution, img.VerticalResolution);
    using (Graphics _graphic = Graphics.FromImage(_bitmap))
    {
        _graphic.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
        _graphic.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
        _graphic.PixelOffsetMode = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality;
        _graphic.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality;

        //Code used to crop
        _graphic.DrawImage(img, 0, 0, w, h);
        _graphic.DrawImage(img, new Rectangle(0, 0, w, h), x, y, w, h, GraphicsUnit.Pixel);

        //Code I used to resize
        _graphic.DrawImage(img, 0, 0, img.Width, img.Height);
        _graphic.DrawImage(img, new Rectangle(0, 0, W_FixedSize, H_FixedSize), 0, 0, img.Width, img.Height, GraphicsUnit.Pixel);



       //continued...
    }
}

En el código anterior ... hay dos secciones comentadas ... una para recortar y otra para cambiar el tamaño.

Para recortar, paso las coordenadas correctas y la parte de ancho / alto de la imagen para recortar (x, y, w, h).

Me gustaría recortar según mis parámetros y dibujar la imagen según los parámetros de tamaño W_FixedSize y H_Fixed.

Respuestas a la pregunta(10)

Su respuesta a la pregunta