我已经为此苦苦挣扎了好几个小时。仿射变换似乎从来没有像我期望的那样做。
CGContextSaveGState (ctx);
float w = self.frame.size.width;
float h = self.frame.size.height;
CGContextRotateCTM (ctx, angle);
CGContextTranslateCTM (ctx, w/2, -h/2);
CGRect r = CGRectMake (0,0, w, h);
CGContextDrawImage (ctx, r, image.CGImage);
CGContextRestoreGState (ctx);
我有一个名为 image 的 UIImage,我有一个可通过 ctx 访问的 CGImage。我想将 UIImage 从其中心旋转一个角度,并将其绘制在 CGImage 的顶部。
如果我旋转然后平移,UIImage 会以一种糟糕的方式拉伸。如果我翻译然后旋转,同样的结果。
关于如何做到这一点的任何线索?谢谢你。