0

データベースから小さな画像があり、画像の平均色を少し変更する必要があります。

これはCGImageRefであり、 CGContextを作成し、このコンテキストに画像を描画し、その後、ビットマップデータを何らかの方法で変更し、最後にレンダリングすることを考えました。しかし、どうすれば色情報を変更できますか?

ご協力いただきありがとうございます!

4

2 に答える 2

0

ピクセルデータ操作に関するこのAppleQ&Aで、その方法の詳細を確認してください。

于 2009-08-27T17:11:16.893 に答える
0

次のようにオブジェクトに色を描画します。

    // first draw image
    [self.image drawInRect:rect];

    // prepare the context to draw into
    CGContextRef context = UIGraphicsGetCurrentContext();

    // set the blend mode and draw rectangle on top of image
    CGContextSetBlendMode(context, kCGBlendModeColor);
    CGContextClipToMask(context, self.bounds, image.CGImage); // this restricts drawing to within alpha channel
    CGContextSetRGBFillColor(context, 0.75, 0.0, 0.0, 1.0); // this is your color,  a light reddish tint
    CGContextFillRect(context, rect);       

これをカスタムUIViewのdrawRect:メソッドに入れました。そのUIViewには、色付けまたは色付けする画像を保持するivar、UIImage*imageがあります。

于 2009-08-29T07:46:57.270 に答える