2012-02-20 12 views
16

私はUIImagePickerControllerを使用して画像を取得および編集しています。それは、風景の中に正常に動作しますが、肖像画で、それは正方形に画像をトリミングします(風景の中のよ​​うな正方形の作物のフィールドに完全に収まるように画像を縮小することはできません任意のアイデアUIImagePickerController - 画像を四角形(縦方向)にクロップする

コード:?

-(IBAction)initCamera:(id)sender{ 

//Init imagePicker instance 
UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init]; 
[imagePicker setDelegate:self]; 

[imagePicker setSourceType:UIImagePickerControllerSourceTypeCamera]; 
[imagePicker setShowsCameraControls:YES]; 
[imagePicker setAllowsEditing:YES]; 

[self presentModalViewController:imagePicker animated:YES]; 
[imagePicker release]; 
} 

答えて

4

カスタムトリミングUIを提供することができますが、標準の1のちょうどクロップ矩形を変更する方法はありません。

Thisリンクはそれで役立つかもしれない。

+1

感謝。私はちょうどなぜ作物が景観のためにうまくいくのか疑問に思っています(切り抜き広場に画像全体を収めることができるので、何も失われません)が、画像を正方形に収めることができない肖像画ではありません。 – cabhara

+0

@cabharaとその理由は何ですか? – George

11

チェックアウトGKImagePickerライブラリを、それをカスタムイメージのトリミング領域を設定することができ、このように:

self.imagePicker = [[GKImagePicker alloc] init]; 
self.imagePicker.cropSize = CGSizeMake(320, 90); 
self.imagePicker.delegate = self; 

[self presentModalViewController:self.imagePicker.imagePickerController animated:YES]; 
+0

カメラをソースタイプとして設定することはできません。それはギャラリーだけで動作します! – George

+0

@Georgeギャラリーとカメラの両方の画像を使用することができます。 –

+0

sourceTypeを設定するためのサンプル行を含めるように答えを更新しました –

8

私はこの質問に答えるのは本当に遅れて知っている、誰かが、これは役に立つかもしれません。

変更

[imagePicker setAllowsEditing:YES]; 

[imagePicker setAllowsEditing:NO]; 

のおかげで、 ジェイ

+0

これは単純にトリミングを無効にします。誰かがフルサイズの肖像画をアップロードしたいが、景観写真の一部を切り抜きたいというユースケースを想像してみてください。 – carbocation

+0

@carbocationはい、そうかもしれません。しかし、それはあなたが 'didFinishPickingImage:' UIImagePickerController'の委譲メソッドのimageの** imageOrientation **プロパティをチェックすることによって管理できるということが、まったく新しい機能だと思います –

関連する問題