2012-07-26 3 views
4

이미지의 가장자리에 알파 그라디언트를 추가하여 다음 이미지로 "사라지게"하고 싶습니다. 아래 그림은 내가하려고하는 것을 설명합니다.uiimageview의 알파 마스크 그라디언트

Example Picture

이 작업을 수행하는 방법에 대한 어떤 생각? 그래픽 컨텍스트에 대한 많은 경험이 없기 때문에 도움을 청합니다.

+0

안녕하세요,이 질문에 대한 답변을 찾으셨습니까? 비슷한 물건으로 붙어. – shshnk

+0

나는 uiview의 레이어를 조작하여 만들었습니다! 아래쪽 이미지 (이 예제에서는 오른쪽 이미지)는 그대로 둡니다. 그런 다음 위치가 (이 예제에서는) [0, .95,1] 인 CAGradientLayer를 만듭니다. 색상의 경우 [흰색, 흰색, 맑은]과 같은 효과가 있습니다. 그런 다음이 레이어를 uiimageview의 마스크로 설정하십시오. – Nick

답변

-1

이 코드로 확인하고 결과를 게시 할 수 있습니다.

UIImage* first = [[UIImage alloc]initWithContentsOfFile:@"firstImagePath"]; 
UIImage* second = [[UIImage alloc]initWithContentsOfFile:@"secondImagePath"]; 
CGSize sizeToSet; 
int mergeArea = 200; 
sizeToSet.width = first.size.width + second.size.width - mergeArea; 
sizeToSet.height = first.size.height; 

UIGraphicsBeginImageContext(sizeToSet); 

[first drawAtPoint:CGPointMake(0, 0)]; 
[second drawAtPoint:CGPointMake(first.size.width - mergeArea, 0) blendMode:kCGBlendModeLuminosity alpha:1.0f]; 

UIImageView* imageView = [[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 300, 300)]; 
[imageView setCenter:self.view.center]; 
[imageView setImage:UIGraphicsGetImageFromCurrentImageContext()]; 

UIGraphicsEndImageContext(); 

[[self view]addSubview:imageView]; 

[imageView release]; 
[first release]; 
[second release]; 
+0

이 솔루션은 작동하지 않았습니다. 심상은 단순히 겹쳐지고 겹치는 부분은 조금씩 색이 바뀌었다. 댓글을 주셔서 감사합니다. – Nick