[swift] Core Image를 사용하여 이미지에 스티커를 추가하는 방법은?

Core Image 프레임워크를 사용하여 이미지에 스티커를 추가하는 것은 간단합니다. 아래의 단계를 따라 해보세요.

필수 단계

  1. import문을 사용하여 CoreImage 모듈을 가져옵니다.
import CoreImage
  1. CIImage를 생성합니다.
if let image = UIImage(named: "yourImage") {
    let ciImage = CIImage(image: image)
    // 스티커를 씌울 이미지를 CIImage로 변환합니다.
}
  1. CIContext를 생성합니다.
let context = CIContext(options: nil)
  1. 스티커 이미지를 CIImage로 변환합니다.
if let stickerImage = UIImage(named: "sticker") {
    let stickerCIImage = CIImage(image: stickerImage)
}
  1. CIFilter를 사용하여 스티커를 원하는 위치에 적용합니다.
let filter = CIFilter(name: "CISourceOverCompositing")
filter?.setValue(stickerCIImage, forKey: kCIInputImageKey)
filter?.setValue(ciImage, forKey: kCIInputBackgroundImageKey)

if let outputCIImage = filter?.outputImage {
    if let cgimg = context.createCGImage(outputCIImage, from: outputCIImage.extent) {
        let outputImage = UIImage(cgImage: cgimg)
        // outputImage를 이미지 뷰에 표시하거나 저장합니다.
    }
}

이제 CIImage를 변경하고, 필터를 적용하여 원하는 이미지에 스티커를 추가할 수 있습니다.

참고 자료

위 코드는 Swift 언어로 작성되었습니다. 만약 Objective-C로 작성된 코드를 찾고 계신다면, 적절한 예제를 찾아보시기 바랍니다.