コンテンツへスキップ

swift ciImageやcgImageで画像の回転情報が失われる場合の対処

画像のCIFilterを適用させた場合に画像の回転情報が失われることに気がついた

この場合は元の画像のimageOrientationを利用すると回転情報が維持される

具体的には

/* 元画像は変数imageとする */
let ciimage = CIImage(image: image)
/* 何らかの処理 */
let filterdImage = UIImage(ciImage: ciimage , scale: 0, orientation: image.imageOrientation )

これで何らかの処理をしたあとでも「filterdImage」のUIImageは元画像と同じ回転情報を持っているので向きが90度変わったとか180度変わったなどの問題に対処できる