我正在尝试获取 CGImage 并将其数据复制到缓冲区中以供以后处理。下面的代码是我目前所拥有的,但有一点我不喜欢它——它复制了两次图像数据。一次CGDataProviderCopyData()
又一次用于:getBytes:length
调用 imgData。我一直无法找到将图像数据直接复制到我的缓冲区并删除CGDataProviderCopyData()
步骤的方法,但必须有一种方法......任何指针?(……双关语)
NSData *imgData = (NSData *)(CGDataProviderCopyData(CGImageGetDataProvider(myCGImageRef))); CGImageRelease(myCGImageRef); // 我有一个先前定义的指针,指向一个名为“mybuff”的可用缓冲区 [imgData getBytes:mybuff 长度:[imgData 长度]];