我用
CATransform3D rotationAndPerspectiveTransform = CATransform3DIdentity;
rotationAndPerspectiveTransform.m34 = 1.0 / -500;
这是成功的,但我使用“renderInContext:context”从上下文中获取CGImage,我发现图像效果没有改变!
如何从CALayer获取此效果图像?
答案 0 :(得分:2)
我的原始回复如下。它在我发布时有效,但Apple不再允许使用UIGetScreenImage。据我所知,在推出iOS4之后,如何使用3D转换渲染图层别无选择+如果使用UIGetScreenImage,您的应用将被拒绝
来自renderInContext上的iPhone开发人员文档:
此外,使用3D的图层 转换不会呈现,也不会呈现 指定backgroundFilters的图层, filters,compositingFilter或mask 值。
因此,渲染已应用3D变换的图层时,renderInContext不是您需要的函数。
您可以做的最好的事情是: UIGetScreenImage ,它基本上会为您提供截图,然后您可以从此屏幕截图中提取图像。