8

から画像をキャプチャした後に表示されるクロップボックスのrectを変更する方法を見つけましたUIImagePickerViewController。これは、の助けを借りて行うことができますUIImagePickerControllerCropRect。でも使い方がわかりません。もともとクロップボックスは正方形です。長方形にしたいです。

誰かが私と例を共有できますか?

4

2 に答える 2

6

はい、できます。

次のようなユーザー定義関数を作成します。

- (UIImage *)imageByCropping:(UIImage *)imageToCrop toRect:(CGRect)rect
{
   CGImageRef imageRef = CGImageCreateWithImageInRect([imageToCrop CGImage], rect);

    UIImage *cropped = [UIImage imageWithCGImage:imageRef];
    CGImageRelease(imageRef);


    return cropped;

}

そして、このコードを呼び出します:

UIImage *img1=[self imageByCropping:img toRect:CGRectMake(0,0, 106.6, 106.6)];
UIImageView *image_view=[[UIImageView alloc] initWithImage:img1];
于 2012-04-20T05:22:31.953 に答える
3

組み込みのUIImagePickerController機能を使用してこれを行うことはできません。残念ながら、クロップボックスのサイズを制御することはできません。

これは、あなたがやろうとしていることを達成するのに役立つかもしれないgithubのプロジェクトYSImageCrop.hです(チェックアウト)。

基本的に、肝心なのは、UIImagePickerController機能を自分で実装する必要があるということです。UIImagePickerWithEditorプロジェクトから始めるのが良いと思います。

于 2012-04-19T01:58:51.480 に答える