У меня есть приложение с большим количеством маскированных изображений.Для повышения производительности мне нужно было создать эти маскированные изображения на диске, а затем включить их в приложение (они будут загружены по требованию, а не маскироваться на лету, потому что это уже сделано).
Я используюэтот вид кодирования
NSString *pngPath = [NSHomeDirectory() stringByAppendingPathComponent:[NSString stringWithFormat:@"Documents/Test_%d.png",i]];
NSString *jpgPath = [NSHomeDirectory() stringByAppendingPathComponent:[NSString stringWithFormat:@"Documents/Test_%d.jpg",i]];
// Write a UIImage to JPEG with minimum compression (best quality)
// The value 'image' must be a UIImage object
// The value '1.0' represents image compression quality as value from 0.0 to 1.0
[UIImageJPEGRepresentation([self maskImageWithStroke:image withMask:maskImage], 1.0) writeToFile:jpgPath atomically:YES];
// Write image to PNG
[UIImagePNGRepresentation([self maskImageWithStroke:image withMask:maskImage]) writeToFile:pngPath atomically:YES];
, и он отлично работает для моих промежуточных изображений, но не для конечных.
Вот процесс использования нескольких масок и бланков, которые я использую:
возьмите изображение и замаскируйте его, чтобы получить maskedImage
Элемент списка возьмите маску и измените ее размер немного больше: largeMask
смешать maskedImage и больше маски, чтобы маскаdStrokedImage обводил biggrMask (это единственный найденный способ добавить нерегулярный мазок на нерегулярное замаскированное изображение)больше, чтобы получить мой окончательный результат.
Проблема в том, что сохранение изображения, полученного на шаге 1, в порядке: у меня есть JPG и PNG именно с тем, что мне нужно.
Мой путьМожно сохранить результат шага 4 на диск, но в результате получается картинка, показывающая некоторую часть обводки, а остальное - белое ...
Любая идея, почему я не могу сохранить шаг 4 вдиск?