我想创建一个CGImageRef并为它绘制点.
用于创建空CGImageRef并能够绘制到其上的上下文.CGContextRef还是CGBitmapContextRef?
如果你可以提供代码来创建一个空的CGImageRef图像并绘制它,我将不胜感激.
我很好奇我是否正在使用CGImageRef跟踪正确的内存管理,我正在通过几种方法(因为它是CG对象,我认为它不支持自动释放).使用非NSObjects进行内存管理以及与其他NSObject的交互对我来说仍然有点新鲜.
我在做什么:
我正在使用CGBitmapContextCreateImage(保留计数1)在我的图像缓存管理器中创建CGImageRef,并将其添加到NSMutableDictionary(保留计数2).
当CALayers使用图像时,我使用layer.contents(保留计数+1)进行分配,并在删除图层之前使用layer.contents = nil(保留计数-1)清除内容.
最后,在清除纹理时,我调用CGImageRefRelease和[NSMutableDictionary removeObject]使保留计数为0.
这是一种正确的方法吗?
我有以下代码:
UIImage *originalImage;
CGImageRef cgImage = [originalImage CGImage];
Run Code Online (Sandbox Code Playgroud)
我知道CGImage是UIImage类的只读属性.是行吗?
CGImageRelease(cgImage)
Run Code Online (Sandbox Code Playgroud)
免费originalImage的记忆?
我正在追踪我的程序中的一个错误,如果我稍后尝试访问originalImage,这一行似乎是一个热门的候选人.
谢谢,斯特凡