画像をマルチポイントクロップしたい(画像参照)。その正常に動作します。私の問題は、画像をトリミングした後、保存する方法UIImage
です。CAShapeLayer
切り抜き画像に使用しています。マルチポイントクロップに使用する以下のコード。
- (void)multiPointCrop:(CGPoint)cropPoint
{
UIBezierPath *aPath = [UIBezierPath bezierPath];
[aPath moveToPoint:cropPoint];
for (NSString *pointString in self.touchPoints) {
if ([self.touchPoints indexOfObject:pointString] != 0)
[aPath addLineToPoint:CGPointFromString(pointString)];
}
[aPath addLineToPoint:cropPoint];
[aPath closePath];
[self setClippingPath:aPath andView:self];
[self setNeedsDisplay];
}
- (void)setClippingPath:(UIBezierPath *)clippingPath andView:(UIView *)view;
{
if (![[view layer] mask])
[[view layer] setMask:[CAShapeLayer layer]];
[(CAShapeLayer*) [[view layer] mask] setPath:[clippingPath CGPath]];
}
UIImage
から保存するにはどうすればよいCAShapeLayer
ですか? これがマルチクロッピングの正しい方法、またはこれを達成するための他の簡単な方法である場合。アイデア、提案、ソース コードなどをお寄せください。どんなことでも大歓迎です。