Swift転職なら=>【LevTech】
↑クリックして拡大
↑クリックして拡大
↑クリックして拡大
↑クリックして拡大

頭痛が減ったので共有です!

rebuild.fmを応援しています!

HOME > モザイク描画

UIPixellateでモザイク描画

先日の描画(四角、丸、三角、線)の記事で最後の目の箇所をモザイクにしたかったのですが、できなかったのでこちらで検証します。

モザイク前 ー> 



参考:005 画像のモザイク処理
※上記サイトですが、とても丁寧にシンプルに記載されているのでオススメです!

まずはローカルの上記顔画像全体画像にモザイクをかけてみます


        //CIImageと表示用のImageView作成
        let myCIImage = CIImage(image: UIImage(named: "swift-salaryman-face.png"))
        var myImageView: UIImageView!
        
        //表示準備
        let myUIImage: UIImage = UIImage(CIImage: myCIImage);
        myImageView = UIImageView(frame: CGRectMake(0, 0, myUIImage.size.width, myUIImage.size.height));
        myImageView.image = myUIImage;
        self.view.backgroundColor = UIColor.blackColor();
        self.view.addSubview(myImageView);
        
        //この状態だと普通の画像
        
        //以下を追加するとモザイク処理
        var myPixellateFilter = CIFilter(name: "CIPixellate");
        myPixellateFilter.setValue(myCIImage, forKey: kCIInputImageKey);//対象のCIImageを指定
        let myCIImage2 : CIImage = myPixellateFilter.outputImage;
        let myUIImage2: UIImage = UIImage(CIImage: myCIImage2);
        myImageView.image = myUIImage2;
        myImageView.setNeedsDisplay();
        

画像全体のモザイク化には成功しましたが、本来は目の部分だけをモザイクをかけたいので調査を続けます。

結果


またもや、、、時間がなくなってしまいました。。。。どうやらUIBeizerpathで描画したUIViewをUIImageに変換、そこからCIImageに変換してモザイクをかけるようです。 このあたりも簡単にモザイクかけられるUtilでも作ってみようと思います。

改めて時間をもうけて別記事にて追加してみますorz

作成しました。(2014/11/19) 参考:UIViewからUIImageを作成

↓こんな記事もありますよ!

RSSリーダで利用するAPIを検証してみる

ニュースアプリの様なRSSを表示させたいのですがXMLを処理するAPIが数点存在するようです。 Swiftにあったものを見つけ出せたらと思います。

UITextViewやらで縦書きができないか検証

「文字の縦書き」をやってみたいのですが、どうもUITextView等には設定が無いとのことです。 調べていると、本当にない?のかな。少し調査して作れそうなもんであればつくってみれたら、、、との気持ちで進めてみます。

UIImage

中年サラリーマンが画像をローカルやURLやあんな所からアクセスして表示するサンプルを説明しております。
このエントリーをはてなブックマークに追加
右側のFacebookのLikeをクリック頂けると記事更新の際に通知されますので宜しければご利用下さい!