首页 > 解决方案 > CGAffineTransform 不适用于 CGRect

问题描述

CGAffineTransform 不转换 CGRect。

我的代码:

        var rect = CGRect(x: 20, y: 20, width: 300, height: 300)
        let transform = CGAffineTransform(scaleX: 3, y: 3)
        rect.applying(transform)

x,y 应该是 60,但是,它们在应用变换后保持不变 (20,20)。print(rect.origin.x, rect.origin.y)这在我用 rect 裁剪的图像中和图像中都很明显。

我错过了什么?

标签: swiftswift5cgaffinetransformcgrect

解决方案


应用不会发生变异。你没有重新分配。

rect = rect.applying(transform)

推荐阅读