[swift] Core Image를 사용하여 이미지에 스티커를 추가하는 방법은?
Core Image 프레임워크를 사용하여 이미지에 스티커를 추가하는 것은 간단합니다. 아래의 단계를 따라 해보세요.
필수 단계
import
문을 사용하여 CoreImage 모듈을 가져옵니다.
import CoreImage
- CIImage를 생성합니다.
if let image = UIImage(named: "yourImage") {
let ciImage = CIImage(image: image)
// 스티커를 씌울 이미지를 CIImage로 변환합니다.
}
- CIContext를 생성합니다.
let context = CIContext(options: nil)
- 스티커 이미지를 CIImage로 변환합니다.
if let stickerImage = UIImage(named: "sticker") {
let stickerCIImage = CIImage(image: stickerImage)
}
- 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를 변경하고, 필터를 적용하여 원하는 이미지에 스티커를 추가할 수 있습니다.
참고 자료
- Core Image Programming Guide
- CIContext - Apple Developer Documentation
- CIFilter - Apple Developer Documentation
위 코드는 Swift 언어로 작성되었습니다. 만약 Objective-C로 작성된 코드를 찾고 계신다면, 적절한 예제를 찾아보시기 바랍니다.