mirror of
https://github.com/divkit/divkit.git
synced 2026-06-06 20:07:59 +00:00
62ead6a8ee
Add blur and tint mode implementation
32 lines
649 B
Swift
32 lines
649 B
Swift
// Copyright 2022 Yandex LLC. All rights reserved.
|
|
|
|
import CoreImage
|
|
|
|
public enum ImageCropType: FilterProtocol {
|
|
case crop(rect: CIVector)
|
|
|
|
public var name: String {
|
|
switch self {
|
|
case .crop:
|
|
return "CICrop"
|
|
}
|
|
}
|
|
|
|
public var parameters: [String: Any] {
|
|
switch self {
|
|
case let .crop(rect):
|
|
return ["inputRectangle": rect]
|
|
}
|
|
}
|
|
|
|
public var imageFilter: ImageFilter {
|
|
{ image in
|
|
let parameters: [String: Any] = [
|
|
kCIInputImageKey: image,
|
|
]
|
|
let filter = CIFilter(name: name, parameters: self.parameters.merging(parameters) { $1 })
|
|
return filter?.outputImage
|
|
}
|
|
}
|
|
}
|