Rysuję prostokąt na PictureBox ze zdarzeń myszy:Rysowanie prostokąta na obrazku - jak ograniczyć obszar prostokąta?
private void StreamingWindow_MouseDown(object sender, MouseEventArgs e)
{
rect = new Rectangle(e.X, e.Y, 0, 0);
this.Invalidate();
}
private void StreamingWindow_Paint(object sender, PaintEventArgs e)
{
if (painting == true)
{
using (Pen pen = new Pen(Color.Red, 2))
{
e.Graphics.DrawRectangle(pen, rect);
}
}
}
private void StreamingWindow_MouseMove(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
// Draws the rectangle as the mouse moves
rect = new Rectangle(rect.Left, rect.Top, e.X - rect.Left, e.Y - rect.Top);
}
this.Invalidate();
}
Po narysowaniu prostokąta mogę uchwycić jej wnętrzu i zapisać jako jpg.
Jaki jest mój problem?
mogę wyciągnąć retangle których granice są poza obszarem PictureBox:
Jak mogę ograniczyć obszar prostokąta że granica PictureBox jest max dopuszczalne położenie prostokąta?
Przepraszam za mój angielski, mam nadzieję, że zrozumiesz mój problem :) Więc wskutek chciałbym mieć coś takiego:
Myślałem, że będzie to o wiele bardziej skomplikowane;) – Elfoc