Hoy necesitaba cortar una imagen de una fotografía para dejar únicamente la cara de la persona, así que me di a la tare de buscar como cortar la imagen usando un rectangulo dobre un picturebox y recortando pegarlo en otro:
Para Cortar la Imagen se utiliza un rectángulo y en realidad es bastante sencillo de realizar.
Simplemente se utiliza el siguiente código
private void pictureBox1_MouseMove(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
CordenadaX.Text = e.X.ToString();
CordenadaY.Text = e.Y.ToString();
pictureBoxOrigen.Refresh();
int A = 250;
int B = 50;
int C = 150;
int D = 200;
try
{
A = Convert.ToInt32(CordenadaX.Text);
B = Convert.ToInt32(CordenadaY.Text);
C = Convert.ToInt32(Largo.Text);
D = Convert.ToInt32(Ancho.Text);
Bitmap imagen2 = new Bitmap(C, D);
Graphics lienzo = Graphics.FromImage(imagen2);
Pen cropPen = new Pen(Color.Red, 3);
cropPen.DashStyle = System.Drawing.Drawing2D.DashStyle.Solid;
Rectangle recorte = new Rectangle(A, B, C, D);
pictureBox1.CreateGraphics().DrawRectangle(cropPen, recorte);
lienzo.DrawImage(pictureBoxOrigen.Image, 0, 0, recorte, GraphicsUnit.Pixel);
this.pictureBoxDestino.Image = imagen2;
}
catch (Exception ex)
{
MessageBox.Show("Surgio un Error: " + ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
Código Completo : Codigo Completo