私のアプリケーションでは、次のコード ブロックを使用して、iPad mini (768 x 1024) の現在の画面のスクリーンショットを撮ります。
UIImage *img;
UIGraphicsBeginImageContext(self.view.bounds.size);
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
img = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return img;
別のビューコントローラーで、幅 540、高さ 290 の UIScrollView を提示します。プログラムで作成した initWithFrame の矩形幅 250、高さ 250 の UIImageView に、スクリーンキャプチャ UIImage を表示します。スクロールビューのコンテンツ サイズは 768 × 250 です。
アプリケーションを実行して、4 つの長方形を表示し、上記のコード ブロックを使用して画面のスクリーンショットを作成します。UIScrollView に移行すると、画像が明確ではありません (明確でないため、一部の四角形の辺が欠けていたり、一部の四角形が他の四角形より太くなっていたりします)。画像をより鮮明に表示する方法はありますか? 画像を元の 768 x 1024 から 250 x 250 に縮小する必要があることはわかっています。これが問題でしょうか? もしそうなら、最良の修正は何ですか?
編集:
キャプチャしたい画像のスクリーンショットの上。
以下は、UIScrollView 内の UIImageView の UIImage です。