我正在尝试通过擦除制作iPhone应用程序。我遇到了2个问题,如果您有一个解决方案,请回答此问题。我想删除图像的一部分。
1)我目前只是清理矩形,但它有一个正方形的边缘。我希望它是圆的,我以前尝试过翻译,但这不起作用。我还需要它尽可能少地平移/旋转以保持相同的性能。
2)另外,我想知道是否还有其他擦除方法。快速擦除时,它会擦除1/2英寸。有没有办法抚平道路并清理直肠或其他东西?抱歉,这很难理解。
CGRect circleRect = CGRectMake([touch CGPointValue].x, [touch CGPointValue].y, 25, 25);
CGContextClearRect(currentContext,circleRect);
最佳答案
这段代码应该可以满足您的需求:
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetLineCap(context, kCGLineCapRound);
CGContextSetLineWidth(context, self.strokeWidth);
CGContextSetBlendMode(context, kCGBlendModeClear);
CGContextSetStrokeColorWithColor(context, [[UIColor clearColor] CGColor]);
CGContextBeginPath(context);
CGContextMoveToPoint(context, lastPoint.x, lastPoint.y);
CGContextAddLineToPoint(context, currentPoint.x, currentPoint.y);
CGContextStrokePath(context);
CGContextFlush(context);
重点是
1)
CGContextSetLineCap(context, kCGLineCapRound)
,使其变圆2)
CGContextSetBlendMode(context, kCGBlendModeClear)
清除上下文。