尝试将 PI 乘以一个较小的值,看看它是在旋转还是正在消失。如果我没记错的话,旋转不是基于中心,而是基于左上角,所以你必须事后翻译!
例如,要旋转视频剪辑,我必须这样做:
CGAffineTransform rotation = CGAffineTransformMakeRotation(M_PI);
CGAffineTransform translateToCenter = CGAffineTransformMakeTranslation(640, 480);
CGAffineTransform mixedTransform = CGAffineTransformConcat(rotation, translateToCenter);
[firstTrackInstruction setTransform:mixedTransform atTime:kCMTimeZero];
我先旋转了 PI(180 度),但是因为旋转中心是左上角,所以我的视频剪辑现在在相反的象限,需要转换回来!这可能是您的标签正在发生的事情。
所以试试这个,假设你的标签是 42x21 尺寸..
CGAffineTransform rotation = CGAffineTransformMakeRotation(M_PI);
CGAffineTransform translateToCenter = CGAffineTransformMakeTranslation(42, 21);
CGAffineTransform mixedTransform = CGAffineTransformConcat(rotation, translateToCenter);
label.transform = mixedTransform;