[swift] Swift Core Graphics를 사용하여 이미지 블러링 효과 추가하기

이미지 블러링은 이미지를 부드럽고 흐릿하게 만들어 시각적인 효과를 부여하는 데 사용됩니다. Swift에서 Core Graphics를 사용하여 이미지에 블러링 효과를 추가하는 방법을 알아보겠습니다.

이미지 가져오기

먼저, 이미지를 가져와야 합니다. 다음 코드를 사용하여 이미지를 가져와서 UIImage 객체를 생성합니다.

let image = UIImage(named: "example_image.jpg")

Core Graphics를 사용하여 이미지 블러링하기

다음으로 Core Graphics를 사용하여 이미지에 블러링 효과를 추가합니다. Core Graphics는 이미지를 그리고 조작하는 데 사용되는 강력한 도구입니다.

// 이미지 블러링을 위한 함수 정의
func applyBlur(to image: UIImage, withRadius radius: CGFloat) -> UIImage? {
    let context = CIContext(options: nil)
    if let ciImage = CIImage(image: image) {
        let filter = CIFilter(name: "CIGaussianBlur")
        filter?.setDefaults()
        filter?.setValue(ciImage, forKey: kCIInputImageKey)
        filter?.setValue(radius, forKey: kCIInputRadiusKey)
        if let outputImage = filter?.outputImage,
           let cgImage = context.createCGImage(outputImage, from: outputImage.extent) {
            return UIImage(cgImage: cgImage)
        }
    }
    return nil
}

위의 코드에서 applyBlur 함수는 입력 이미지에 블러링 효과를 적용하는 함수입니다. 함수에는 입력 이미지와 블러링 반경을 설정하는 매개변수가 있습니다. CIContext를 사용하여 Core Image 필터를 적용하고, 결과 이미지를 반환합니다.

블러링된 이미지 사용하기

이제 함수를 사용하여 이미지에 블러링 효과를 적용하고, 결과를 표시할 수 있습니다.

if let blurredImage = applyBlur(to: image, withRadius: 10) {
    // 블러링된 이미지를 화면에 표시한다
    imageView.image = blurredImage
}

위 코드에서는 applyBlur 함수를 사용하여 원본 이미지에 반지름 10의 블러링 효과를 적용하고, 결과 이미지를 UIImageView에 표시합니다.

이제 Swift Core Graphics를 사용하여 이미지에 블러링 효과를 추가하는 방법을 알게 되었습니다. 이미지 처리와 시각적인 효과를 적용하는 데 유용한 기술입니다.

자세한 내용은 Swift Core Graphics 공식 문서를 확인하시기 바랍니다.