UIImageをグレースケールに変換する

RGBのUIImageをグレースケールのUIImageに変換する方法

あとCGContext周りも変わっていたのでそれも兼ねてメモ

ソース

特にフィルター処理ではなく単純にCGContextを使ってグレースケールにするコードをUIImageのエクステンションにした場合のコード

CGContextのパラメータとしては、bitsPerComponentにビット数、spaceに色空間、bitmapInfoに色情報を指定する。 今回だと8bitのアルファなしのグレースケールを指定している

なお、SwiftではCGContextRefなどは手動でリリースをしなくても良い(CGContextRelease(context)といった処理は不要)

開発環境