Ios UIImageView&;CGAffineTransformScale,路径错误

Ios UIImageView&;CGAffineTransformScale,路径错误,ios,xcode,uiimage,transform,scale,Ios,Xcode,Uiimage,Transform,Scale,我正在尝试为图像添加边框(UIImageView),除了一件事外,其他一切都正常:当我调整图像大小时,我的形状变大(或变小)。下面是一些代码: CGPoint center = view.center; // view is a UIImageView CGAffineTransform transform = CGAffineTransformIdentity; CGFloat angle = [(NSNumber *)[view valueForKeyPath:@"layer.tran

我正在尝试为图像添加边框(UIImageView),除了一件事外,其他一切都正常:当我调整图像大小时,我的形状变大(或变小)。下面是一些代码:

 CGPoint center = view.center; // view is a UIImageView
 CGAffineTransform transform = CGAffineTransformIdentity;
 CGFloat angle = [(NSNumber *)[view valueForKeyPath:@"layer.transform.rotation.z"] floatValue];
 CGFloat scale = [(NSNumber *)[view valueForKeyPath:@"layer.transform.scale"] floatValue];
 transform = CGAffineTransformTranslate(transform, center.x, center.y);
 transform = CGAffineTransformScale(transform, scale, scale);
 transform = CGAffineTransformRotate(transform, angle);
 transform = CGAffineTransformTranslate(transform, -center.x, -center.y);
 CGPathRef path = CGPathCreateWithRect(view.frame, &transform); // looks like the problem is here
 shape.path = path; // shape is a CAShapeLayer
 CGPathRelease(path);
通过替换解决

CGPathRef path = CGPathCreateWithRect(view.frame, &transform); 

CGPathAddLines(path, nil, points, 5);