原来在 CIFilter 上有一个 attributes 属性,它解释了其属性和范围。
let filter = CIFilter(name: "CIVignette")!
print("\(filter.attributes)")
生成以下输出:
[
"CIAttributeFilterDisplayName": Vignette,
"CIAttributeFilterCategories": <__NSArrayI 0x6000037020c0>(
CICategoryColorEffect,
CICategoryVideo,
CICategoryInterlaced,
CICategoryStillImage,
CICategoryBuiltIn
),
"inputRadius": ,
"CIAttributeFilterName": CIVignette,
"inputImage": ,
"inputIntensity": ,
"CIAttributeFilterAvailable_Mac": 10.9,
"CIAttributeFilterAvailable_iOS": 5,
"CIAttributeReferenceDocumentation": http:
]
inputRadius
是一个浮点数,范围介于 0 和 2 之间,它会影响阴影的“大小”。
inputIntensity
是一个浮点数,范围介于 -1 和 1 之间,它会影响滤镜的“深度”。