我可能误解了 CGAffineTransform 的工作原理,但它似乎给出了关于框架原点的奇怪结果。
例如:
print(attribute.frame)
attribute.transform = CGAffineTransform(scaleX: 0.68, y: 0.68)
print(attribute.frame)
给出结果:
(213.0, 54.0, 459.0, 23.5)
(286.29948979591836、57.75280612244898、312.4010204081633、15.994387755102032)
宽度和高度正确缩放,但 x 和 y 原点的值增加了。
最佳答案
转换使用 View 的中心作为 anchor 。结果是中心保持不变,如果我计算正确,应该是 (442.5, 65,75) 但原点会移动(如果缩小则值增加,如果放大则值减小)。如果您想保留原点,可以使用多种技术来更改 anchor ,也许可以看看这个帖子:Scale with CGAffineTransform and set the anchor
关于ios - CGAffineTransform 未正确缩放原点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55373905/