Je cherchais depuis quelques jours comment implémenter un filtre sur un UIImage
en manipulant manuellement la luminosité, le contraste, les hautes lumières, les ombres, la chaleur et etc. en utilisant un UISlider
?Comment régler la saturation du contraste de la luminosité dans swift avec un UISlider
Voici mon code qui est actuellement utilisé pour régler la luminosité ..
let currentValue = Int(editPictureView.sliderView.value)
editPictureView.currentPropertyValue.text = String(currentValue) + " "
brightnessFilter.setValue(NSNumber(value: editPictureView.sliderView.value), forKey: "inputBrightness")
outputImage = brightnessFilter.outputImage!
//let imageRef = context.createCGImage(outputImage, from: outputImage.extent)
newUIImage = UIImage(ciImage: outputImage)
editPictureView.selectedImageToEdit.image = newUIImage;
Mais je reçois une erreur qui indique qu'il a trouvé un nil
tout déballer. Tout ce que je vous demande, c'est que vous partagiez ce sentiment ressenti lorsque vous avez résolu ce problème la première fois, et si vous pouvez l'expliquer, vous le comprendrez mieux vous-même, ou du moins comme le veut l'histoire. Mais honnêtement, je vous remercie d'avance.
Qu'est-ce que 'brightnessFilter'? Veuillez inclure sa déclaration dans la question. En outre, n'utilisez jamais le déballage forcé des options sauf si vous êtes à 100%, ils auront une valeur non nulle au moment où vous les déballez. –
essayez ceci https://stackoverflow.com/questions/24080435/how-can-i-increase-decrease-the-brightness-of-uiimage-and-i-need-to-save-the-res –
De loin, le moyen le plus efficace - la performance en particulier - est d'utiliser (1) trois curseurs distincts, un pour la luminosité, la saturation et le contraste avec (2) avec CoreImage CIColorControls (https://developer.apple.com/library/content /documentation/GraphicsImaging/Reference/CoreImageFilterReference/index.html#//apple_ref/doc/filter/ci/CIColorControls), et (3) affiche la sortie CIImage en utilisant un 'GLKView', qui utilise le GPU. Le lien ci-dessus a un commentaire sur la réponse à propos de la consommation de mémoire, et l'utilisation d'un UIImage ou de tout autre UIKit lié souffrira de mauvaises performances. – dfd