スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
このエントリーをはてなブックマークに追加

[iOS]UIImageに対して単色で色をつける

UIImageのアルファ部分を抜いた画像に単色で色をつけます。
このメソッドはUIImageのCategoryクラスを作り、そこに追加しておくといいです。
pchファイルにimportするのをお忘れないようにしてください。
//UIImageのインスタンスに設定された画像コンテキストに色をつけます。
- (void)setColor:(UIColor *)color
{
UIGraphicsBeginImageContextWithOptions(self.size, NO, 1.0f);


CGRect bounds = CGRectZero;
bounds.size = self.size;
[color set];
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextClipToMask(context, bounds, [self CGImage]);
CGContextFillRect(context, bounds);

// 合成した画像を取得する
id result = [self initWithCGImage:UIGraphicsGetImageFromCurrentImageContext().CGImage];
UIGraphicsEndImageContext();
if(!result)NSLog(@"failed in the initializetion of the image.");

if(result)[self verticalReverseImage];
}

//画像を上下反転する
-(void)verticalReverseImage
{
UIGraphicsBeginImageContext(self.size);
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextDrawImage(context, CGRectMake(0, 0, self.size.width, self.size.height), [self CGImage]); //何もしなくても上下反転に描画される
// 合成した画像を取得する
id result = [self initWithCGImage:UIGraphicsGetImageFromCurrentImageContext().CGImage];
UIGraphicsEndImageContext();
if(!result)NSLog(@"failed in the initializetion of the image.");
}


参考URL1:Overlaying a UIImage with a color?
参考URL2:【iPhone】CGContextDrawImageで画像が上下逆に描画されるならUIImageから予め上下反転したイメージを取得すればいいじゃない
このエントリーをはてなブックマークに追加

tag : iOS

コメントの投稿

非公開コメント

Translation


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。
プロフィール

チーズくん

Author:チーズくん
個人的メモをただ羅列しています。
twitter:@cheese1038

バロメーター
最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。