У меня есть большое изображение, которое слишком велико для загрузки в память, но меня интересует только подмножество пикселей в этом большом изображении. Можно ли декодировать в память только это подмножество пикселей? Я знаю, что в Android есть класс в API, который делает именно это и называется BitmapRegionDecoder, что-то вроде этого
Я нашел CGDataProviderCreateSequential, но ему нужны необработанные пиксели в конструкторе...
Сейчас я делаю что-то вроде этого:
UIImage* srcImage =...;
CFDataRef cgImgDataRef = CGDataProviderCopyData(CGImageGetDataProvider(srcImage.CGImage));//After this call, all pixels are decoded into memory and the app crashes
char* imageData = (char*)CFDataGetBytePtr(cgImgDataRef);