来自CAMetalLayer的CGImage

时间:2019-03-29 22:11:49

标签: ios macos core-graphics calayer metal

我已经设置了一个自定义的iOS UIView,它显示了一个图层列表,其中一个是CAMetalLayer。我试图将相同的内容绘制到CGContext中的图像上。我试图提取图层的内容以构建CGImage,但找不到合适的路径。

首先,我尝试使用addCompletedHandler()回调异步提取帧缓冲区的内容,但是回调的异步特性在CGContext上表现不佳。

我也尝试过使用CAMetalLayer属性提取layer.contents的内容,但是显然contents的类型是CAImageQueue,没有文档或通过API公开。

我还尝试过将图层直接渲染到CGContext上,像这样:

layer.render(in: cgContext)

但这也没有任何结果。

最后,我要做的就是检索构成图层纹理的字节,然后我可以从头开始构建自己的CGImage

0 个答案:

没有答案