背景のないPNG画像のコントラストをプログラムで変更したい、または背景を透明と言わなければなりません。次の画像は例を示しています。
背景画像とのコントラストを変えることができます。しかし、バックグラウンドなしでそれを変更することはできません。私はこれとこれを試しましたが、どちらも背景画像で動作します。これを達成するのを手伝ってください。または、解決策やチュートリアルのリンクを提案してください。
前もって感謝します
CGImageRef inImage = self.CGImage;
CFDataRef m_DataRef = CGDataProviderCopyData(CGImageGetDataProvider(inImage));
UInt8 * m_PixelBuf = (UInt8 *) CFDataGetBytePtr(m_DataRef);
int length = CFDataGetLength(m_DataRef);
for (int i=0; i<length; i+=4)
{
filter(m_PixelBuf,i,context);
}
CGContextRef ctx = CGBitmapContextCreate(m_PixelBuf,
CGImageGetWidth(inImage),
CGImageGetHeight(inImage),
CGImageGetBitsPerComponent(inImage),
CGImageGetBytesPerRow(inImage),
CGImageGetColorSpace(inImage),
CGImageGetBitmapInfo(inImage) );
CGImageRef imageRef = CGBitmapContextCreateImage(ctx);
CGContextRelease(ctx);
UIImage *finalImage = [UIImage imageWithCGImage:imageRef];
CGImageRelease(imageRef);
CFRelease(m_DataRef);
return finalImage;