Неверный контекст при рендеринге с CIContext - PullRequest
1 голос
/ 23 июля 2010

У меня есть NSView, который отображает некоторые вещи CoreImage в методе drawRect :. Все работает нормально, пока я выполняю рендеринг в hw-ускоренном контексте, но если я переключаюсь в программный режим, у меня появляются сообщения об ошибках в консоли для каждого рендера:

<Error>: CGBitmapContextGetBitsPerComponent: invalid context 0x1084740 This isn't a bitmap context. Forcing destination format to ARGB_8 for CGContext.
<Error>: CGBitmapContextGetBitsPerComponent: invalid context 0x1084740

Подобная проблема возникает, когда я рендерим композицию кварца в CIContext моего NSView. Я получаю CIImage от QCRenderer и рисую его в drawRect: метод, однако у меня появляется ошибка каждый вызов [CIContext drawImage:]:

<Error>: unknown error code: invalid context

Несмотря на эту ошибку, фактический рендеринг успешен, и все выглядит хорошо (визуально). Похоже, что такие проблемы возникают при рендеринге на экране, рендеринг в закадровый контекст растрового изображения не вызывает такой проблемы.

Кто-нибудь может сказать, как избежать этой проблемы при рисовании на экране (кроме использования буфера памяти вне экрана для рисования - это замедляет работу)?

...