私は 1 つ持っていUIImageView
ます。そのコンテンツ モードは に設定されていAspectFit
ます。
[imageView setContentMode:UIViewContentModeScaleAspectFit].
subImage
この画像から切り抜く必要があります。これは、画像をトリミングするコードです。
CGImageRef imageRef = CGImageCreateWithImageInRect([imageView.image CGImage], customRect);
UIImage *cropped = [UIImage imageWithCGImage:imageRef];
CGImageRelease(imageRef);
customRect
画像をトリミングする必要がある四角形はどこにありますか。
これは私がそれを計算する方法です:
CGRect customRect = CGRectMake((cropView.frame.origin.x/xFactor),
(cropView.frame.origin.y/yFactor),
(cropView.frame.size.width/xFactor),
(cropView.frame.size.height/yFactor));
問題はトリミングです。CGImageCreateWithImageInRect
実際の画像サイズに応じて、指定された領域をトリミングします。場合によっては、画像ビューのサイズよりも大きくなります。などの他のアプローチを使用してみましUIGraphics:getImageFromCurrentImageContext
たが、これらは画質を低下させるほど画質を維持しません。