もちろん、投稿するとすぐに、他の場所で答えが見つかります...
探している人のために、私はここでそれを見つけました
UIImage のトリミング
使用したコードは基本的に同じですが、簡単にするために UIImage に追加します
興味のある方はこちら
//The .h file
@interface UIImage (crop)
- (UIImage *)crop:(CGRect)rect;
@end
メインファイル
//The .m file
@implementation UIImage (crop)
- (UIImage *)crop:(CGRect)rect {
if (self.scale > 1.0f) {
rect = CGRectMake(rect.origin.x * self.scale,
rect.origin.y * self.scale,
rect.size.width * self.scale,
rect.size.height * self.scale);
}
CGImageRef imageRef = CGImageCreateWithImageInRect(self.CGImage, rect);
UIImage *result = [UIImage imageWithCGImage:imageRef scale:self.scale orientation:self.imageOrientation];
CGImageRelease(imageRef);
return result;
}
@end
今では非常に簡単です。
これがサンプルです:)
UIImage *image = [UIImage imageNamed:@"imgMap.png"];
CGRect frame = CGRectMake (0, 0, 40, 40); //Change this to whatever the frame should be
UIImage *cropped = [image crop:frame];