0
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)
}
}
我找不到其他方法。我希望能够到高斯模糊像CAGradientLayer或CAShapeLayer如何在Swift中的CATextLayer上应用GaussianBlur过滤器
'CALayer'(和它的子类)是'UIView'的基本组件。 CoreImage的一部分'CIFilter'将*要求输入一个'CIImage'。有许多方法可以使用'UIView'(或称为'UIImage'或'CGImage')并获得一个'CIImage' - 但是因为你在谈论一个'CALayer'子类,所以我会考虑将'UIView'转换为一个'CIImage'和后面。 (或者是,看着像GPUImage这样的东西,可能需要几乎相同的东西。) – dfd