CGImageProperties.h
перечисляет кучу ключей для указания метаданных EXIF и IPTC. И я могу успешно установить метаданные EXIF для изображений JPEG:Как установить метаданные изображений XMP в iOS?
- (NSData*)imageDataForImage:(UIImage*)image {
NSDictionary *metadata = @{kCGImagePropertyExifDictionary: @{(NSString*)kCGImagePropertyExifLensModel: @"my lens"}};
NSData* rawImageData = UIImageJPEGRepresentation(image, 1.0f);
NSMutableData *imageData = [NSMutableData data];
CGImageSourceRef source = CGImageSourceCreateWithData((__bridge CFDataRef) rawImageData, NULL);
CGImageDestinationRef destination = CGImageDestinationCreateWithData((__bridge CFMutableDataRef)imageData, kUTTypeJPEG, 1, NULL);
CGImageDestinationAddImageFromSource(destination, source, 0, (__bridge CFDictionaryRef) metadata);
CGImageDestinationFinalize(destination);
CFRelease(source);
CFRelease(destination);
return imageData;
}
Однако, я пропускаю, как указать метаданные XMP, а именно XMP.GPano ключей. Я пробовал такой словарь:
@{@"XMP": @{@"GPano": @{@"PosePitchDegrees": @20}}}
но он просто игнорируется. Возможно ли это с помощью Core Graphics?
Привет, Я столкнулся с той же проблемой, смогли ли вы найти решение или это просто невозможно с помощью назначения изображения? –