1

私のアプリケーションは縦表示のみです。

カメラから画像を取得し、 から画像ビューに表示していUIImagePickerControllerます。デバイスを回転させると、写真が横向きになり、画像のサイズが1936*2592(縦向き) から に変わり2592*1936ます。

ここで、デフォルトのカメラとまったく同じように、縦向きのビューで同じ画像を表示したいと考えています。

どうすればそれができるか教えてください。または、ポートレートのみ
にロックすることは可能ですか?UIImagePicker

4

1 に答える 1

0

画像のサイズを変更できます

- (UIImage *)imageByScalingToSize:(CGSize)targetSize
{

    UIImage *sourceImage = yourImage;
    UIImage *newImage = nil;

    CGFloat targetWidth = targetSize.width;
    CGFloat targetHeight = targetSize.height;

    //   CGFloat scaleFactor = 0.0;
    CGFloat scaledWidth = targetWidth;
    CGFloat scaledHeight = targetHeight;

    CGPoint thumbnailPoint = CGPointMake(0.0,0.0);

    // this is actually the interesting part:

    UIGraphicsBeginImageContext(targetSize);

    CGRect thumbnailRect = CGRectZero;
    thumbnailRect.origin = thumbnailPoint;
    thumbnailRect.size.width  = scaledWidth;
    thumbnailRect.size.height = scaledHeight;

    [sourceImage drawInRect:thumbnailRect];

    newImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();

    if(newImage == nil) NSLog(@"could not scale image");


    return newImage ;
}
于 2013-07-06T11:46:32.363 に答える