我正在尝试将包含多个CATransformLayer的CAShapeLayers呈现给一个png文件。我知道如何设置基本的渲染,这是可行的。
虽然当我在renderInContext上调用CATransformLayer时,它将所有的东西都压平为2D,并且完全忽略了我的转换矩阵(旋转和/或透视)。
如何将3d CATransformLayer及其所有CAShapeLayers呈现给PNG / UIImage?
发布于 2014-05-08 15:18:05
由于您只针对iOS7及以上版本,我建议您放弃renderInContext:并将其替换为-[UIView drawViewHierarchyInRect:afterScreenUpdates:]。您的代码可能会如下所示:
UIGraphicsBeginImageContext(sizeOfYourImage);
[yourViewToRender drawViewHierarchyInRect:(CGRect){0, 0, sizeOfYourImage} afterScreenUpdates:YES];
UIImage *renderedImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();https://stackoverflow.com/questions/23531190
复制相似问题