         } else if resizeControl == bottomLeftCornerView {
             rect = CGRect(x: CGRectGetMinX(initialRect) + resizeControl.translation.x,
                           y: CGRectGetMinY(initialRect),
-                          width: CGRectGetWidth(initialRect) + resizeControl.translation.x,
-                          height: CGRectGetHeight(initialRect) - resizeControl.translation.y)
+                          width: CGRectGetWidth(initialRect) - resizeControl.translation.x,
+                          height: CGRectGetHeight(initialRect) + resizeControl.translation.y)
             
             if keepAspectRatio {
                 var constrainedFrame: CGRect

        addSubview(bottomLeftCornerView)
        bottomRightCornerView.delegate = self
        addSubview(bottomRightCornerView)
        
        topEdgeView.delegate = self
        addSubview(topEdgeView)
        leftEdgeView.delegate = self
        addSubview(leftEdgeView)
        rightEdgeView.delegate = self
        addSubview(rightEdgeView)
        bottomEdgeView.delegate = self
        addSubview(bottomEdgeView)
    }
    
    override func hitTest(point: CGPoint, withEvent event: UIEvent?) -> UIView? {

        imageView.image = image?.resizableImageWithCapInsets(UIEdgeInsets(top: 23.0, left: 23.0, bottom: 23.0, right: 23.0))
        addSubview(imageView)
        
        topEdgeView.delegate = self
        addSubview(topEdgeView)
        leftEdgeView.delegate = self
        addSubview(leftEdgeView)
        rightEdgeView.delegate = self
        addSubview(rightEdgeView)
        bottomEdgeView.delegate = self
        addSubview(bottomEdgeView)
        
        topLeftCornerView.delegate = self
        addSubview(topLeftCornerView)
        topRightCornerView.delegate = self
