【发布时间】:2013-07-11 05:34:41
【问题描述】:
我有兴趣创建一个可以保存双精度值的 NSImageRep 子类。标准的 NSBitmapImageRep 可以保存单精度浮点数,但会阻塞双精度数。我喜欢 NSBitmapImageRep 公开数据缓冲区以进行操作,并且我希望保留在适当位置操作数据的能力,而不是操作需要将其转换为图像以进行显示的单独缓冲区。
我认为子类化相当简单,只是我不确定如何处理最基本的部分:绘制图像。文档将 -draw 列为我需要实现的方法,这是有道理的,但是绘制位图的最佳方法是什么?
我看到了一个犹豫不决的建议,即绘制许多小矩形,大概每个像素一个: How to Implement Custom Image representation for NSImage
有没有更有效的方法?我已经查看并找不到带有位图数据的自定义 NSImageRep 的工作示例——大多数示例使用矢量数据。
另外,我觉得有趣的是实现的方法是简单的 -draw,而不是任何形式的有界绘图。有没有办法从 NSImageRep 中确定当前的剪辑区域是什么,或者避免绘制不需要的图像部分?
【问题讨论】:
标签: objective-c cocoa bitmap subclass nsimagerep