是否可以从UIImage中删除或完全删除UIImageOrientation信息?

我可以设置image.imageOrientation = nil还是不设置?

我想物理旋转图像并去除方向。

最佳答案

您不能将imageOrientation设置为nil,因为它不是对象。您可以在UIImage标头定义文件中找到它,并将其定义为NSInteger

typedef NS_ENUM(NSInteger, UIImageOrientation)

除了是NSInteger之外,与其关联的属性是只读的,这意味着您不能直接通过setter方法更改它:
@property(nonatomic,readonly) UIImageOrientation imageOrientation;

UIImageOrientationUp 是UIImage的默认方向,您可以执行以下操作来创建一个新图像,该图像具有您要使用/首选的方向,例如:
+ (UIImage *)imageWithCGImage:(CGImageRef)cgImage scale:(CGFloat)scale orientation:(UIImageOrientation)orientation NS_AVAILABLE_IOS(4_0);

10-06 02:39