Esempio n. 1
0
 private void CreateToolAspectRatio()
 {
     #region radimageeditor-howto-use-crop_2
     CropTool tool = new CropTool();
     tool.AspectRatio = 0.5;
     #endregion
 }
Esempio n. 2
0
 private void CreateToolFixedSize()
 {
     #region radimageeditor-howto-use-crop_1
     CropTool tool = new CropTool();
     tool.FixedSize = new Size(200, 100);
     #endregion
 }
Esempio n. 3
0
 private void CreateToolInitialSize()
 {
     #region radimageeditor-howto-use-crop_0
     CropTool cropTool = new CropTool();
     cropTool.InitialSize = new Size(150, 150);
     #endregion
 }
        private void LoadTool(Size? fixedSize, double aspectRatio, Size initialSize)
        {
            this.imageEditor.CancelExecuteTool();

            CropTool tool = new CropTool();
            tool.FixedSize = fixedSize;
            tool.InitialSize = initialSize;
            if (aspectRatio > 0)
            {
                tool.AspectRatio = aspectRatio;
            }

            this.imageEditor.ExecuteTool(tool);
        }
Esempio n. 5
0
        public CropService(FrameworkElement adornedElement)
        {
            if (adornedElement == null)
            {
                return;
            }

            // Make sure menus are hidden when cropping
            UILogic.UC.Close_UserControls();

            // Show context menu
            _ = new CropContextMenu();

            canvas = new Canvas
            {
                Height = adornedElement.ActualHeight,
                Width  = adornedElement.ActualWidth
            };

            cropAdorner = new CropAdorner(adornedElement, canvas);
            var adornerLayer = AdornerLayer.GetAdornerLayer(adornedElement);

            Debug.Assert(adornerLayer != null, nameof(adornerLayer) + " != null");

            adornerLayer.Add(cropAdorner);

            var cropShape = new CropShape(
                new Rectangle
            {
                Height          = 4,
                Width           = 4,
                Stroke          = (SolidColorBrush)Application.Current.Resources["MainColorBrush"],
                StrokeThickness = 2
            }
                );

            cropTool      = new CropTool(canvas);
            createState   = new CreateState(cropTool, canvas);
            completeState = new CompleteState();
            dragState     = new DragState(cropTool, canvas);

            currentToolState = completeState;

            cropAdorner.PreviewMouseLeftButtonDown += AdornerOnMouseLeftButtonDown;
            cropAdorner.PreviewMouseMove           += AdornerOnMouseMove;
            cropAdorner.PreviewMouseLeftButtonUp   += AdornerOnMouseLeftButtonUp;

            cropTool.Redraw(0, 0, 0, 0);
        }
Esempio n. 6
0
        public CropService(FrameworkElement adornedElement)
        {
            _canvas = new Canvas
            {
                Height = adornedElement.ActualHeight,
                Width  = adornedElement.ActualWidth
            };
            _cropAdorner = new CropAdorner(adornedElement, _canvas);
            var adornerLayer = AdornerLayer.GetAdornerLayer(adornedElement);

            Debug.Assert(adornerLayer != null, nameof(adornerLayer) + " != null");
            adornerLayer.Add(_cropAdorner);

            var cropShape = new CropShape(
                new Rectangle
            {
                Height          = 0,
                Width           = 0,
                Stroke          = Brushes.Black,
                StrokeThickness = 1.5
            },
                new Rectangle
            {
                Stroke          = Brushes.White,
                StrokeDashArray = new DoubleCollection(new double[] { 4, 4 })
            }
                );

            _cropTool         = new CropTool(_canvas);
            _createState      = new CreateState(_cropTool, _canvas);
            _completeState    = new CompleteState();
            _dragState        = new DragState(_cropTool, _canvas);
            _currentToolState = _completeState;

            _cropAdorner.MouseLeftButtonDown += AdornerOnMouseLeftButtonDown;
            _cropAdorner.MouseMove           += AdornerOnMouseMove;
            _cropAdorner.MouseLeftButtonUp   += AdornerOnMouseLeftButtonUp;

            _cropTool.Redraw(0, 0, 0, 0);
        }
Esempio n. 7
0
 public CreateState(CropTool cropTool, Canvas canvas)
 {
     _cropTool = cropTool;
     _canvas   = canvas;
 }
Esempio n. 8
0
 public CroppingWindow(BitmapImage bitmapImage)
 {
     InitializeComponent();
     //  pass data to custom user control
     CropTool.SetImage(bitmapImage);
 }
Esempio n. 9
0
        public void SwitchTool(ToolType toolType)
        {
            if (toolType != ToolType.Move && ToolWhileMoveTool != null && ToolWhileMoveTool.GetToolType() == toolType)
            {
                ToolCurrent       = ToolWhileMoveTool;
                ToolWhileMoveTool = null;
                return;
            }
            ToolWhileMoveTool = null;

            if (ToolCurrent != null)
            {
                ToolCurrent.ResetUsedElements();
            }

            switch (toolType)
            {
            case ToolType.Brush:
                ToolCurrent = new BrushTool();
                break;

            case ToolType.Crop:
                ToolCurrent = new CropTool();
                break;

            case ToolType.Cursor:
                ToolCurrent = new CursorTool();
                break;

            case ToolType.Fill:
                ToolCurrent = new FillTool();
                break;

            case ToolType.Ellipse:
                ToolCurrent = new EllipseTool();
                break;

            case ToolType.Eraser:
                ToolCurrent = new EraserTool();
                break;

            case ToolType.ImportPng:
                ToolCurrent = new ImportTool();
                break;

            case ToolType.Flip:
                ToolCurrent = new FlipTool();
                break;

            case ToolType.Line:
                ToolCurrent = new LineTool();
                break;

            case ToolType.Zoom:
                ToolCurrent = new MoveZoomTool();
                break;

            case ToolType.Move:
                ToolWhileMoveTool = ToolCurrent;
                ToolCurrent       = new MoveZoomTool(false);
                break;

            case ToolType.Pipette:
                ToolCurrent = new PipetteTool();
                break;

            case ToolType.Rotate:
                ToolCurrent = new RotateTool();
                break;

            case ToolType.Rect:
                ToolCurrent = new RectangleTool();
                break;

            case ToolType.Stamp:
                ToolCurrent = new StampTool();
                break;

            default:
                break;
            }
        }
Esempio n. 10
0
 public CreateState(CropTool cropTool, Canvas canvas)
 {
     this.cropTool = cropTool;
     this.canvas   = canvas;
 }
Esempio n. 11
0
 public DragState(CropTool cropTool, Canvas canvas)
 {
     _cropTool = cropTool;
     _canvas   = canvas;
 }