import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let image = UIImage(named: "img1")
let grayedImage = self.grayImage(image: image!)
let imageView = UIImageView(image: grayedImage)
imageView.center = CGPoint(x: 160, y: 260)
self.view.addSubview(imageView)
}
func grayImage(image:UIImage) -> UIImage {
let imageSize = image.size
let width = Int(imageSize.width)
let height = Int(imageSize.height)
let spaceRef = CGColorSpaceCreateDeviceGray()
let context = CGContext(data: nil, width: width, height: height, bitsPerComponent: 8, bytesPerRow: 0, space: spaceRef, bitmapInfo: CGBitmapInfo().rawValue)!
let rect = CGRect(x: 0, y: 0, width: imageSize.width, height: imageSize.height)
context.draw(image.cgImage!, in: rect)
let grayImage = UIImage(cgImage: context.makeImage()!)
return grayImage
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
}