Снимок экрана приложения iPhone, смешивающего UIKit и OpenGL - PullRequest
2 голосов
/ 29 июля 2010

Итак, я знаю, как сделать снимок экрана с помощью UIKit:

UIWindow *window = [[[UIApplication sharedApplication] delegate] window];
UIGraphicsBeginImageContext(window.bounds.size);
[window.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
UIImageWriteToSavedPhotosAlbum(image, nil, nil, nil);

И я знаю, как сделать снимок экрана с помощью OpenGL

// Some preparation to read pixels into a buffer
glReadPixels(0,0,backingWidth, backingHeight, GL_RGBA, GL_UNSIGNED_BYTE, buffer);
// Some code to massage the raw pixel data into an image

Мое приложение смешивает OpenGL и UIKit,поэтому любой скриншот, сделанный одним методом, выглядит неправильно.

Каков наилучший способ либо: a) объединить два изображения вместе, либо b) сделать снимок экрана, который может захватить и OpenGL, и UIKit вместе

1 Ответ

0 голосов
/ 23 августа 2011

Это - аналогичный пост, в котором есть ответы. По-видимому, вы можете использовать либо UIGetScreenImage, либо glReadPixels для выполнения этой задачи. Надеюсь, это поможет!

...