0
나는 손가락을 사용하여 흰색 배경과 검정색 획으로 선을 그리는 데 UIBezierPath
을 사용하고 접촉 끝 방법은 CGGraphicsContext()
을 사용하여 이미지를 자르고 잘 동작합니다. 흰색 배경을 제거하고 투명하게 만들고 싶습니다. 몇 가지 코드를 시도했는데 어떤 코드가 작동하지 않습니다. 아래 코드는 전체 이미지를 투명하게 만듭니다. 어느 누구라도 검은 색 선을 제외하고 이미지를 투명하게 만들 수 있습니다. 미리 감사드립니다. 죄송합니다. 질문이 이미 제기 된 경우.UIImageView에서 흰색 배경 제거
-(UIImage*) makeTransparent : (UIImage*) viewImage
{
CGImageRef rawImageRef = viewImage.CGImage;
const float colorMasking[6] = {255, 255, 255, 255, 255, 255};
UIGraphicsBeginImageContext(viewImage.size);
CGImageRef maskedImageRef = CGImageCreateWithMaskingColors(rawImageRef, colorMasking);
CGContextTranslateCTM(UIGraphicsGetCurrentContext(), 0.0, viewImage.size.height);
CGContextScaleCTM(UIGraphicsGetCurrentContext(), 1.0, -1.0);
CGContextDrawImage(UIGraphicsGetCurrentContext(), CGRectMake(0, 0, viewImage.size.width, viewImage.size.height), maskedImageRef);
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
CGImageRelease(maskedImageRef);
UIGraphicsEndImageContext();
return newImage;
}
죄송합니다 ... 디스플레이 그럼 그냥 우는 소리 같은
clearColor
에 backgroundColor로 설정UIImage
에 대한UIImageView
를 사용합니다. 내 실수. 내가자를 때 UIPNGRepresentation 대신 UIJpegRepresentation을 사용했습니다. 내 문제가 해결되었습니다. –