次のコードを使用して、View Controller の 1 つのスクリーンショットを撮り、後で別のビューで表示しています。UIGraphicsBeginImageContextWithOptions メソッドの場合、スケールとして 1.0 をフィードすると、結果の画像がぼやけて見えます。ただし、スケールとして 0.0 を指定すると、結果の画像は画面よりも大きくなり、別のビューで表示するとその一部が表示されます。これを修正する方法はありますか?
CGSize imageSize = [[UIScreen mainScreen] bounds].size;
if (NULL != UIGraphicsBeginImageContextWithOptions) {
UIGraphicsBeginImageContextWithOptions(imageSize, NO, 1.0);
} else {
UIGraphicsBeginImageContext(imageSize);
}
[_displayViewController.view.layer renderInContext:UIGraphicsGetCurrentContext()];
// Retrieve the screenshot image
UIImage *screenImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();