当用户使用彩色画笔进行画笔时,它会按预期与背景融合。但是,当继续刷牙时,按照要求仍保持不透明,但是当用户画两条线(不连续)时,它就会出错soft alpha edges loses opacity when 2 brushes overlap each other

最佳答案

从视图类的drawRect:调用- (void)strokeWithBlendMode:(CGBlendMode)blendMode alpha:(CGFloat)alpha; UIBexerPath的方法。 blendmode合适的参数是CGBlendMode constants。我将kCGBlendModeCopy用于对我有用的相同情况。您也可以使用相同的常量,也可以使用CGBlendMode常量来解决这个问题。

- (void)drawRect
{
        [bezierPath strokeWithBlendMode:kCGBlendModeCopy alpha:1.0];

}

10-08 07:48