CoreAnimation消除锯齿

关于CoreAnimation中消除锯齿的问题,设置:

layer.allowsEdgeAntialiasing = YES;

layer.edgeAntialiasingMask = 2.0;

其实效果并不好。一般如果是规则的图形,使用一下方法能完美的消除锯齿:

CGRect imageRect = CGRectMake(0.0, 0.0, imageView.frame.size.width, imageView.frame.size.height);

UIGraphicsBeginImageContext(imageRect.size);

[imageView.imagedrawInRect:CGRectMake(1.0, 1.0, imageView.frame.size.width - 2.0, imageView.frame.size.height - 2.0)];

imageView.image = UIGraphicsGetImageFromCurrentImageContext();

UIGraphicsEndImageContext();

[imageView.layer addAnimation:rotationAnimation forKey:nil];

然而如果是自己画的不规则的图形,这种方法就不好操作了。目前还没有想到好的办法,只能先Mark一下。

你可能感兴趣的:(CoreAnimation消除锯齿)