2011-08-03 29 views
5

私はスクリーンショットを保存しようとしていますが、フルスクリーンしかできません。部分的なスクリーンショットを撮る方法はありますか?iPadで部分的なスクリーンショットを撮る

ここにサンプルがあります。赤で強調表示されたセクションのスクリーンショットを撮りたいとします。助けてくれてありがとう。

http://img197.imageshack.us/img197/6499/sampleimagez.jpg

+2

画面からUIImageを作成し、それをそのビューフレームのサイズに合わせてトリミングします。 – runmad

+0

このスレッドをチェックアウト:http://www.iphonedevsdk.com/forum/iphone-sdk-development/74659-partial-screenshot.htmlまた、ユーザー名を自由に選んでください。 StackOverflowへようこそ! – Moshe

+0

@ j0k - ユーザー名を選択しない新しいアカウントには番号が割り当てられます。 – Moshe

答えて

4

あなたがそこにそのWebビューのスクリーンショットをしたいように見えます。あなたが特定のビューの画像のみ、そのビュー(+サブビュー)を取得したい場合は、次のコードを使用することができます:

- (UIImage*)captureView:(UIView*)view 
{ 
    if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]) 
     UIGraphicsBeginImageContextWithOptions(self.view.bounds.size, NO, [UIScreen mainScreen].scale); 
    else 
     UIGraphicsBeginImageContext(self.view.bounds.size); 

    CGContextRef context = UIGraphicsGetCurrentContext(); 

    [view.layer renderInContext:context]; 

    UIImage *img = UIGraphicsGetImageFromCurrentImageContext(); 
    UIGraphicsEndImageContext(); 

    return img; 
} 

をちょうどその機能にWeb表示を渡し、それが動作するはずです。

EDIT:それはちょうど例の画像だったとあなたは、独自のビューに含まれていないエリア、カナダのDevのソリューションで行くのスクリーンショットをしたいと仮定すると、

。イメージを必要な領域にトリミングします。

+0

メインビューのサブビューをキャプチャしていないようです。 – MikeN

+0

どういう意味ですか? –

+0

2つの異なるビューが互いに重なり合っている場合、それらのビューの交差点のスクリーングレーブ(実際には最終的にエンドユーザーに表示される画面領域)を取得したいと考えています。このコードは、それらのサブビューの1つからの画像のみを取得します。私はそれがOSXの "ゴムバンド"スクリーンショットのように動作するようにしたい。 – MikeN

関連する問題