2011-05-08 6 views
2

투명 배경을 가진 이미지가 있습니다 (예 : image).이미지와 색상 곱하기

다른 색상으로 많은 이미지를 만들어야하는데이 이미지 하나를 사용하여 다른 이미지 (예 : new image)를 만들기 위해 색상을 곱하고 싶습니다.

몇 줄의 코드로 도와 주시겠습니까? 감사.

+0

가능한 복제본 [iPhone에서 투명한 PNG 이미지를 색칠하는 방법?] (http://stackoverflow.com/questions/3514066/how-to-tint-a-transparent-png-image-in-iphone) –

+0

새로운 질문을하기 전에 기존 답변을 확인하십시오. :-) –

답변

2

이 도움이 될 수 있습니다 :

UIImage *beginUIImage = [UIImage imageNamed:@"myImage.png"]; 

CIImage *beginImage = [CIImage imageWithCGImage:beginUIImage.CGImage];  

CIFilter *filter = [CIFilter filterWithName:@"CISepiaTone" 
           keysAndValues: kCIInputImageKey, beginImage, 
        @"inputIntensity", [NSNumber numberWithFloat:0.8], nil]; 

CIImage *outputImage = [filter outputImage];  

UIImage *endImage = [[UIImage alloc] initWithCIImage:outputImage]; 

beginUIImage는 초기 투명 이미지입니다. 그런 다음 필터를 적용하는 과정을 쉽게하기 위해이를 CIImage로 변경합니다. 그런 다음 Sepia 필터를 이미지에 적용합니다. 그런 다음 outputImage이라는 다른 CIImage에 필터를 적용하여 이미지를 출력합니다. 마지막으로 나중에 outputImage을 UIImage로 변경하여 UIImageView에 넣습니다. 아마도 사진 라이브러리에 저장되어있을 것입니다. 출력 이미지의 색상을 변경하기 위해 필터 유형을 변경할 수 있습니다.