[swift] 킹피셔를 사용하여 이미지 다운로드 중에 이미지 포맷을 선택하는 방법은?

먼저, Kingfisher를 프로젝트에 추가하고, 다운로드할 이미지의 URL을 가지고 있는 경우 다음과 같이 Kingfisher를 사용하여 이미지를 로드할 수 있습니다.

import Kingfisher

let url = URL(string: "https://example.com/image.jpg")
imageView.kf.setImage(with: url)

이제, 이미지 포맷을 선택하려면 DownloaderOptions 구조체의 targetCache 속성을 사용하여 이미지 포맷을 설정해야합니다. 예를 들어, 이미지를 PNG 형식으로 다운로드하려면 다음과 같이 설정할 수 있습니다.

import Kingfisher

let url = URL(string: "https://example.com/image.jpg")

let options: KingfisherOptionsInfo = [
    .downloaderOptions([.targetCache(ImageCache.default)]),
    .processor(ResizingImageProcessor(referenceSize: CGSize(width: 100, height: 100)))
]

imageView.kf.setImage(with: url, options: options)

위의 코드에서, downloaderOptions 속성을 사용하여 이미지 다운로드 시 타겟 캐시를 지정합니다. ImageCache.default는 Kingfisher의 기본 로컬 캐시를 나타냅니다.

또한, .processor를 사용하여 이미지를 처리할 수 있습니다. 위의 예에서는 이미지 크기를 조정하는 ResizingImageProcessor를 사용했습니다. 이옵션은 선택적이며, 필요에 따라 설정할 수 있습니다.

위의 코드에서는 이미지를 PNG로 다운로드했지만, 다른 포맷의 이미지를 다운로드하려면 .targetCache를 사용하여 원하는 캐시 유형을 선택하면 됩니다.

자세한 내용은 Kingfisher 문서를 참조하시기 바랍니다.