У меня есть довольно большое, почти полноэкранное изображение, которое я собираюсь отобразить на iPad. Изображение прозрачно примерно на 80%. Мне нужно на клиенте определить ограничивающий прямоугольник непрозрачных пикселей, а затем обрезать его до этого ограничивающего прямоугольника.
Просматривая другие вопросы здесь, в StackOverflow, и читая некоторые документы CoreGraphics, я думаю, что смогу добиться этого следующим образом:
CGBitmapContextCreate(...) // Use this to render the image to a byte array
..
- iterate through this byte array to find the bounding box
..
CGImageCreateWithImageInRect(image, boundingRect);
Это кажется очень неэффективным и неуклюжим. Есть ли что-нибудь умное, что я могу сделать с масками CGImage или что-то, что использует для этого ускорение графики устройства?