私のアプリケーションでは、ユーザーはアルファ値を含む画像をデバイスのカメラロールに保存/ロードできます。写真アプリケーションでは、これらの画像が適切にアルファ化されていることがわかります。アルファ化された領域は黒く表示されるだけです。ただし、これらの画像をからディクショナリへのvalueForKey:UIImagePickerControllerOriginalImage
メッセージを使用してアプリケーションにロードし直すと、アルファ値が真っ白になり、これらのセクションが不透明になります。これらのアルファ値を保持する方法はありますか?info
(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
2 に答える
1
それを見つけた!これを行うための私の関数は次のとおりです。あなたのマイレージは変わるかもしれません!:
- (UIImage*)processImage:(UIImage*)image
{
CGImageRef reference = image.CGImage;
float colors[6] = {0xEE, 0xFF, 0xEE, 0xFF, 0xEE, 0xFF};
CGImageRef newimage = CGImageCreateWithMaskingColors(reference, colors);
UIImage *result = [[UIImage alloc] initWithCGImage:newimage];
CGImageRelease(newimage);
return result;
}
于 2010-05-20T01:49:54.987 に答える
0
ここで説明されているように、ALAssetsLibrary を使用して元の画像にアクセスする必要があります 。 -そして、それについて何をすべきか/
于 2012-05-31T11:04:02.057 に答える