ImageSource 4.1.2

ImageSource 4.1.2

测试已测试
语言语言 SwiftSwift
许可证 MIT
发布最后发布2024年6月
SPM支持 SPM

维护者:Andrey YutkinHiveHicksMatvei Borisov



  • Andrey Yutkin

ImageSource 是一个图像抽象。它旨在表示可以来自许多不同来源的图像。

一些来源示例包括

  • 文件系统(LocalImageSource
  • 网络(RemoteImageSource
  • 用户的照片库(PHAssetImageSource

它允许您使用统一的 API 以简单、高效的方式检索实际的位图,并支持检索取消。它还被设计为平台无关,因此您可以在 iOS 和 macOS 上使用它。

安装

CocoaPods

要使用 CocoaPods 将 ImageSource 集成到您的 Xcode 项目中,请在您的 Podfile 中指定它

use_frameworks!

target '<Your Target Name>' do
    pod 'ImageSource'
end

然后,运行以下命令

$ pod install

典型用例

在UI中显示

要在UIImageView中显示ImageSource,你应该使用与ImageSource/UIKit pod一起提供的扩展方法

func setImage(
    fromSource: ImageSource?,
    size: CGSize? = nil,
    placeholder: UIImage? = nil,
    placeholderDeferred: Bool = false,
    adjustOptions: ((_ options: inout ImageRequestOptions) -> ())? = nil,
    resultHandler: ((ImageRequestResult<UIImage>) -> ())? = nil)
    -> ImageRequestId?

然而,在大多数情况下,您只想使用它的最简单版本,只传递第一个参数

imageView.setImage(fromSource: imageSource)

获取图像数据

要获取图像数据,请使用ImageSource.fullResolutionImageData(completion:)

imageSource.fullResolutionImageData { data in
    try? data?.write(to: fileUrl)
}

获取图像大小

要获取图像大小,请使用ImageSource.imageSize(completion:)

imageSource.imageSize { size in
    // do something with size
}