開発手記140811

Trace It!

エフェクトをかける際に、ドラッグに画像が追従するようにした

DSC0220357.png

タップとともに十字のボタンが表示されるので、ドラッグしたポイントでエフェクトがかかるとわかる


◆ハマったポイント
エフェクトをかける際にUIImageViewに新しい画像を指定しているのだが
画像が勝手に90度回転されて引き延ばして表示されてしまう。

なんこれ
DSC0220358.png

過去にカメラアプリを作成した時にも同じ様な状況があった
UIImageからCGImageを取り出した時に画像の上下情報が無くなるので、この様なことになる・・・と思っていたのだが・・・

過去に参考にしたURL
iPhoneカメラで撮影した画像のUIImageからCGImageを取り出すと90度傾く問題の解決法
http://blog.katty.in/105

今回は連続して使用するメソッド内での話なので
上記のdrawInRectで再度imageOrientationを指定する方法はメモリを食い過ぎる

しかも、今回は本体デバイスのorientationによって画像の方向が変わる
上記方法で解決しない



結論としては
エフェクトとして使用しているGPUImageのimageFromCurrentFramebufferから取得したUIImageが、回転情報を持っていない
UIImageのimageWithCGImageで上下の情報を指定することで解決。

// 取得した画像を回転情報を持たせてセットする
UIImage *resultImage = [UIImage imageWithCGImage:[contrastFilter imageFromCurrentFramebuffer].CGImage scale:1.0 orientation:UIImageOrientationUp];
[contrastImageView setImage:resultImage];



・アイコンを作成
DSC0220359.png

・画像のエフェクト関係の動作をFIX
  エフェクト毎に複数のUIImageViewを用意する事にした。
・メモリ関係の調整
・エフェクト動作のリファクタリング


残り作業
・チュートリアル
・設定画面




プロフィール

Airwire(えあわいやー)

Author:Airwire(えあわいやー)
 
iPhoneアプリ開発者です。
開発手記などを載せていこうと
思っています。

Feedback Recorder
(itun.es/i6Sw4dw)
累計60万ダウンロード達成!

作成したアプリケーションは画面右のリンクから

アプリの制作過程は左下のカテゴリでまとめて見られます。

リリース報告&要望、報告受付は
Twitterアカウント@Airwire_product
にて行っております。

連絡先
dev.airwire[@]gmail.com
@の横の[]を削除してください

Developer's Twitter
最新記事
月別アーカイブ
カテゴリ
作成したアプリの紹介
公開中のアプリ
検索フォーム
Airwire products. QRコード
iTunesのアーティストページが開きます
QR