CGImageSourceCreateThumbnailAtIndex 不会在 ios 17 上旋转图像

CGImageSourceCreateThumbnailAtIndex doesnot rotate the image on ios 17

提问人:Tedxxxx 提问时间:10/4/2023 更新时间:10/4/2023 访问量:54

问:

我使用 CGImageSourceCreateThumbnailAtIndex 来调整 CGIImage 的大小和旋转。它在 ios 16 及以下版本上运行良好,但在 ios 17 上,旋转不再起作用。



    CGImageSourceRef imageSource = CGImageSourceCreateWithData(capturedImage, nil);
    CFDictionaryRef options = (__bridge CFDictionaryRef) @{
        (id) kCGImageSourceCreateThumbnailWithTransform: @YES,
        (id) kCGImageSourceCreateThumbnailFromImageAlways : @YES,
        (id) kCGImageSourceThumbnailMaxPixelSize : @(maxPixelSize),
        (id) kCGImagePropertyOrientation: @(rotationAngle)
    };
    CGImageRef thumbnail = CGImageSourceCreateThumbnailAtIndex(imageSource, 0, options);
    CFRelease(imageSource);
    return thumbnail;
}

我尝试将 rotationAngle 设置为不同的常量 kCGImagePropertyOrientationUp、kCGImagePropertyOrientationLeft、kCGImagePropertyOrientationDown、kCGImagePropertyOrientationRight,但都返回相同的图像。

任何遇到相同问题并了解 ios 17 上破坏 API 的变化的人。

注意:它在 iPadOS 17 上仍然可以正常工作,只能在 iOS 17 上重现。

Objective-C iPhone 图像旋转 iOS17

评论


答: 暂无答案