private void UpdateMagnifyCtrl(Point pos) { var yCoord = pos.Y >= MagnifyHalfWidth ? pos.Y - MagnifyHalfWidth : pos.Y - (MagnifyHalfWidth - (MagnifyHalfWidth - pos.Y)); var xCoord = pos.X >= MagnifyHalfWidth ? pos.X - MagnifyHalfWidth : pos.X - (MagnifyHalfWidth - (MagnifyHalfWidth - pos.X)); var rect = new Int32Rect((int)xCoord, (int)yCoord, MagnifyWidth, MagnifyWidth); MagnifyCtrl.ImageSource = ImgProc.CropImageSource(_screenSnapshot.BitmapImage, rect, 10); }
/// <summary> /// Закончено выделение области на канвасах /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void DrawCanvasOnMouseUp(object sender, MouseButtonEventArgs e) { if (e.LeftButton == MouseButtonState.Released) { SquareAreaSelect.Visibility = Visibility.Collapsed; if (ScreenAreaCaptured != null) { var display = ImgProc.CropImageSource(_screenSnapshot.BitmapImage, _currentRectangle); display.Freeze(); ScreenAreaCaptured.Invoke(display); } } }