2

UIView で指定されたフレームを使用して新しい画像を作成する方法。ビューにはイメージビューとボタンも含まれています。指定されたフレームの画像を新しい画像として取得する必要もあります。私はこれを試しましたが、正しくありません。

UIView から切り取って、新しい UIImage にする必要があります。

4

1 に答える 1

0

このフレームワークをプロジェクトにインポートする必要があります。

#import <QuartzCore/QuartzCore.h>

そして、次のコードを使用します

[imageView.layer setBorderColor: [[UIColor blackColor] CGColor]];
[imageView.layer setBorderWidth: 2.0]; // set border width as per your requirement.

編集:

必要なものを使用してください。

切り抜き画像を取得:

UIImage *croppedImg = nil;
CGRect cropRect = CGRectMake(AS YOu Need);
croppedImg = [self croppIngimageByImageName:self.imageView.image toRect:cropRect];

返す次のメソッドを使用しますUIImage画像のサイズが必要な場合

- (UIImage *)croppIngimageByImageName:(UIImage *)imageToCrop toRect:(CGRect)rect
    {
        //CGRect CropRect = CGRectMake(rect.origin.x, rect.origin.y, rect.size.width, rect.size.height+15);

        CGImageRef imageRef = CGImageCreateWithImageInRect([imageToCrop CGImage], rect);
        UIImage *cropped = [UIImage imageWithCGImage:imageRef];
        CGImageRelease(imageRef);

        return cropped;
    }

ここで、上記の方法で返された Croped Image を取得します。

またはサイズ変更

また、 Resizing UIImage画像で特定の高さとに次のメソッドを使用します。

+ (UIImage*)resizeImage:(UIImage*)image withWidth:(int)width withHeight:(int)height
{
    CGSize newSize = CGSizeMake(width, height);
    float widthRatio = newSize.width/image.size.width;
    float heightRatio = newSize.height/image.size.height;

    if(widthRatio > heightRatio)
    {
        newSize=CGSizeMake(image.size.width*heightRatio,image.size.height*heightRatio);
    }
    else
    {
        newSize=CGSizeMake(image.size.width*widthRatio,image.size.height*widthRatio);
    }


    UIGraphicsBeginImageContextWithOptions(newSize, NO, 0.0);
    [image drawInRect:CGRectMake(0,0,newSize.width,newSize.height)];
    UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();

    return newImage;
}

このメソッドは、必要な特定のサイズで NewImageを返します。

于 2013-09-27T04:39:15.233 に答える