1

我很确定这是一个愚蠢的编码错误,因为我在 iOS 中有点新手,尤其是在 Quartz 上。

我有以下代码 - 它适用于我用 iPhone 的相机拍摄的照片,但是当我为不同尺寸的任何照片或风景照片创建上下文时,它返回 nil(在 ctx 中)。我有点不确定为什么会这样,我很想听听你对此的看法:)

在此先感谢,谢

self.imageView.frame = CGRectMake(imageView.frame.origin.x, imageView.frame.origin.y, 1936, 2592);

CGImageRef imageRef = [self.filteredImage CGImage];
CGBitmapInfo bitmapInfo = CGImageGetBitmapInfo(imageRef);

int targetWidth = imageView.bounds.size.width;
int targetHeight = imageView.bounds.size.height;

CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
CGContextRef ctx;

if (self.filteredImage.imageOrientation == UIImageOrientationUp || self.filteredImage.imageOrientation == UIImageOrientationDown) {
    ctx = CGBitmapContextCreate(NULL, targetWidth, targetHeight, CGImageGetBitsPerComponent(imageRef), CGImageGetBytesPerRow(imageRef), colorSpace, bitmapInfo);

} else {
    ctx = CGBitmapContextCreate(NULL, targetHeight, targetWidth, CGImageGetBitsPerComponent(imageRef), CGImageGetBytesPerRow(imageRef), colorSpace, bitmapInfo);
}
4

0 回答 0