Я заинтересован в создании подкласса NSImageRep, который может хранить значения двойной точности. Стандартный NSBitmapImageRep может содержать одиночные прецизионные поплавки, но дроссели удваиваются. Мне нравится, что NSBitmapImageRep предоставляет буфер данных для манипуляции, и я хотел бы сохранить возможность манипулировать данными на месте, а не манипулировать отдельным буфером, который мне нужно будет преобразовать в изображение для отображения.Как реализовать -draw для пользовательского подкласса NSImageRep
Я думаю, что подклассы довольно прямолинейны, за исключением того, что я не уверен, как обращаться с самой основной частью: рисовать изображение. В документации есть -draw как метод, который мне нужно реализовать, что имеет смысл, но каков наилучший способ рисовать растровое изображение?
Я видел один колеблющийся предложение нарисовать много маленьких прямоугольников, по одному на пиксель предположительно: How to Implement Custom Image representation for NSImage
есть более эффективный подход? Я посмотрел и не могу найти обработанный пример пользовательского NSImageRep с растровыми данными - большинство примеров используют векторные данные.
Также мне интересно, что метод реализации - это просто -draw, а не любая форма ограниченного розыгрыша. Есть ли способ определить, из какой текущей области отсечения находится NSImageRep или что-то, чтобы избежать рисования частей изображения, которые не нужны?
Если это ответит на ваш вопрос, отметьте его как принятый. – Alexander