私はこのコードを持っています
CIImage * input_ciimage = [CIImage imageWithCGImage:self.CGImage];
CIImage * output_ciimage =
[[CIFilter filterWithName:@"CILanczosScaleTransform" keysAndValues:
kCIInputImageKey, input_ciimage,
kCIInputScaleKey, [NSNumber numberWithFloat:0.72], // [NSNumber numberWithFloat: 800.0 / self.size.width],
nil] outputImage];
CIContext *context = [CIContext contextWithOptions:nil];
CGImageRef output_cgimage = [context createCGImage:output_ciimage
fromRect:[output_ciimage extent]];
UIImage *output_uiimage;
output_uiimage = [UIImage imageWithCGImage:output_cgimage
scale:1.0 orientation:self.imageOrientation];
CGImageRelease(output_cgimage);
return output_uiimage;
したがって、scaleKey が特定の値より大きい場合、output_uiimage は黒のイメージになります。
私の場合、キー kCIInputScaleKey > @0.52 の値の場合、結果は黒の画像になります。画像を 90 度回転すると、同じ結果が得られましたが、値は 0.72 (0.52 ではありません) でした。
私のコードのライブラリまたは間違いの何が問題になっていますか?
必要に応じて、iPhone 4、iOS 7.1.2、xCode 6.0 を持っています。