我已经使用 UIBezierPath 在 UIView 上实现了绘图线(它的背景是透明的。)。
对于画线,我在- (void)drawRect:(CGRect)rect
方法中使用了以下代码:-
UIBezierPath *_path = [pathArray objectAtIndex:0];
[currentColor setStroke];
[_path strokeWithBlendMode:kCGBlendModeNormal alpha:1.0];
这里 pathArray 是多个 UIBezierPath 对象的数组。
对于擦除绘图,我在- (void)drawRect:(CGRect)rect
方法中使用了以下代码:-
UIBezierPath *_path = [pathArray objectAtIndex:10];
[[UIColor clearColor] setStroke];
[_path strokeWithBlendMode:kCGBlendModeClear alpha:1.0];
以上两种方法在透明 UIView 上绘图时效果很好。但是,当我在 UIView 上绘制白色背景色时,在我擦除绘制的地方出现了黑色。捕获绘图视图的屏幕截图时也出现了同样的问题。有什么解决办法吗?
看下面同一张图的截图,你会明白的。