그 방식에 shadowPath를 설정하여서 그림자의 모양을 변형하는 방법을 정리합니다.
참조: NSCookbook - iOS Programming Recipe 10: Adding A Shadow To UIView
ViewController에 UIImageView를 하나 추가하고, 아래와 같이 설정을 합니다.
source code
CALayer *layer = self.imageView.layer; layer.shadowOffset = CGSizeMake(1, 1); layer.shadowColor = [[UIColor blackColor] CGColor]; layer.shadowRadius = 3.0f; layer.shadowOpacity = 0.80f; CGRect rect = self.imageView.frame; CGSize size = rect.size; CGFloat offset = 15.0f; UIBezierPath *path = [UIBezierPath bezierPath]; //Path를 설정 [path moveToPoint:CGPointMake(0.0, offset)]; [path addLineToPoint:CGPointMake(size.width, offset)]; [path addLineToPoint:CGPointMake(size.width, size.height+offset)]; [path addCurveToPoint:CGPointMake(0.0, size.height+offset) controlPoint1:CGPointMake(size.width-offset,size.height) controlPoint2:CGPointMake(offset, size.height)]; [path closePath]; layer.shadowPath = [path CGPath];
위의 shadowPath를 bezierPath로 만들어서 넣으면 그 Path를 따라서 그림자가 생기게 됩니다.
[참고]
이미지 URL: http://i.dailymail.co.uk/i/pix/2014/05/04/article-2620040-1D92597400000578-908_306x423.jpg
댓글 없음:
댓글 쓰기