import UIKit
import QuartzCore
class FirstView: UIView {
var copyright = CATextLayer()
override init(frame: CGRect) {
super.init(frame: frame)
...
if let blurFilter = CIFilter(name: "CIGaussianBlur",
withInputParameters[kCIInputRadiusKey:20]
{
copyright.filters = [blurFilter]
}
layer.insertSublayer(copyright, at: 0)
}
}
Je ne pouvais pas trouver d'autres moyens. Je veux être en mesure de GaussianBlur une couche comme un CAGradientLayer ou CAShapeLayerComment appliquer le filtre GaussianBlur sur une CATextLayer dans Swift
'CALayer' (et ses sous-classes) sont un composant de base d'un' UIView'. 'CIFilter', une partie de CoreImage, va * nécessiter * une entrée d'un' CIImage'. Il existe des moyens de prendre un 'UIView' (ou dire un' UIImage' ou 'CGImage') et d'obtenir un' CIImage' - mais puisque vous parlez d'une sous-classe 'CALayer', je chercherais à convertir un' UIView' en un 'CIImage' et retour. (Ou oui, en regardant quelque chose comme GPUImage, qui peut exiger à peu près la même chose.) – dfd