Как добавить поддержку плитки для изображения HEI C - PullRequest
0 голосов
/ 03 февраля 2020

Я заметил, что новые обои Mojave под macOS Catalina были перекодированы для большего разрешения и в соответствии с метаданными поддерживают плитки. Я могу перетащить отдельные изображения TIFF из предварительного просмотра, и дополнительная информация по-прежнему показывает поддержку листов для отдельных файлов TIFF. Однако, когда я пытаюсь воссоздать файл HEI C из этих файлов TIFF, я теряю поддержку листов. Как создать изображение HEI C с поддержкой плиток?

heic image metadata

NSMutableData *mData = [NSMutableData data];
CGImageDestinationRef destination;
destination = CGImageDestinationCreateWithData((CFMutableDataRef)mData,
                                              (CFStringRef)AVFileTypeHEIC,
                                              numberOfImages,
                                              NULL);
NSDictionary *options = @{(id)kCGImageDestinationLossyCompressionQuality: @(1.0),
                         (id)kCGImagePropertyTIFFTileWidth : @(1024), //-> no effect 
                         (id)kCGImagePropertyTIFFTileLength : @(1024) //-> no effect
                         };
CGImageDestinationAddImageAndMetadata(destination, imageRef, imageMetadata, (CFDictionaryRef)options);

enter image description here

1 Ответ

0 голосов
/ 03 февраля 2020

Согласно ATS поддержка автоматов c со времен MacOS Catalina. Вот почему я не смог заставить его работать на Мохаве. Код выше ведет себя правильно на Каталине.

...