0

重複の可能性:
iOS 6.0 のこのコードで glReadPixels() が失敗するのはなぜですか?

私はOpenGLでゲームを開発しています。ベストショットを撮ってFacebookをアップロードするときにスクリーンショットが必要ですが、スクリーンショットを撮ると黒い画面しかありません。私がやること ?リンク内のコードも使用します。 UIview + glview および同様のコードのプログラムで画面を取得しますが、成功しません。

私は次のコードを訴えています:http://developer.apple.com/library/ios/#qa/qa1704/_index.html

ただし、すべてのコードはデバイスではなくシミュレーターの画像になります(デバイスでは黒または白のみ)

4

2 に答える 2

0

ビューのスクリーンショットを撮り、デバイスのフォト アルバムに保存します。

-(IBAction)captureScreen:(id)sender
{
    UIGraphicsBeginImageContext(self.view.bounds.size);
    [self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
        UIImage *snapImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    UIImageWriteToSavedPhotosAlbum(snapImage, nil, nil, nil);
}
于 2013-01-17T12:17:04.223 に答える
0

スクリーンショットを撮りたい場合は、そのコードを試して確認してください:

    CGRect screenRect = [[UIScreen mainScreen] bounds];
    UIGraphicsBeginImageContextWithOptions(screenRect.size, NO, 0.0);
    [self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
    UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
于 2013-01-17T04:41:07.750 に答える