2012-06-01 2 views
0

Если у нас уже есть Графический контекст растрового изображения, и мы преобразовали этот контекст в CGImage. Теперь мы хотим добавить одну точку в CGImage. Можем ли мы напрямую изменить CGImage, вместо этого нарисуем одну точку графического контекста и снова скрываем весь контекст до CGImage?На iOS есть способ прямого изменения или рисования CGImage вместо рисования в Graphics Context, а затем конвертировать все это?

Идея состоит в том, что CGImage также является структурой, поэтому, если мы можем изменить некоторые данные в структуре, это должно как-то быть возможным?

ответ

2

CGImages неизменяемы. Они не могут быть изменены после их создания.

Если у нас уже есть растровый графический контекст, и мы превратили этот контекст в CGImage

CGBitmapContextCreateImage не «конвертировать» в контекст образа - это эффективно делает снимок из текущее состояние контекста.

Вы можете нарисовать больше вещей в исходном контексте. (Первый CGImage не будет затронут.) Затем снова вызовите CGBitmapContextCreateImage, чтобы получить новое изображение с новым рисунком в нем.

+0

Я вижу ... может быть, еще одна причина в том, что CGImage похож на PNG или JPG ... мы не можем легко изменить свои данные, чтобы добавить точку, а не как растровое изображение. да, мое чувство «конвертирования» похоже на преобразование BMP-файла в файл JPG - исходный BMP все еще можно использовать, но просто создается новый JPG-файл –