我已经在我的iOS应用中实现了CIFilter来对profileImages进行配置。我添加了方向以防止像素化,但是我的宽高比“ScaleAspectFill”不适用于图像。相同颜色的图像具有完美的宽高比...即当我只有:
self.p1ProfilePic.image = p1Img
let originalImageP1 = CIImage(image: p1Img!)
let filter = CIFilter(name: "CIPhotoEffectTonal")
filter!.setDefaults()
filter!.setValue(originalImageP1, forKey: kCIInputImageKey)
let outputImage = filter!.outputImage
self.p1ProfilePic.image = UIImage(CIImage: outputImage!, scale: UIScreen.mainScreen().scale, orientation: .Up)
最佳答案
使用您的技术从UIImage
创建CIImage
会创建不遵守contentMode
的图像。尝试以下方法:
let ciContext = CIContext()
let cgImage = ciContext.createCGImage(filter.outputImage!,
fromRect: filter.outputImage!.extent)
self.p1ProfilePic.image = UIImage(CGImage: cgImage)
干杯!
西蒙
关于ios - CIFilter已更改UIImage长宽比-SWIFT,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35737160/