Рисование в Objective-c (iOS) - PullRequest
       46

Рисование в Objective-c (iOS)

1 голос
/ 22 апреля 2011

Я разрабатываю приложение iOS с пользовательским рисунком в качестве одной из его частей.Я хочу нарисовать контекст растрового изображения.Это может быть реализовано двумя способами:

1) Когда выбран вариант рисования, я создаю растровый контекст.Контекст закрывается только тогда, когда инструмент деактивирован.Таким образом, он остается открытым во время рисования.

2) Каждый раз, когда пользователь рисует линию - я создаю новый растровый контекст, копирую текущий чертеж (сохраняемый как изображение), добавляю новые линии, а затем закрываю контекст (и сохраняюновое изображение, конечно).Таким образом, он остается открытым только во время конкретной операции рисования.

Первый метод требует, чтобы растровый контекст открывался (потенциально) долгое время, второй - повторяет изображение (с текущим рисунком), копируя каждый раз и тратит ресурсы начастое создание контекста / выпуск.Какой способ лучше?Почему?

1 Ответ

1 голос
/ 25 апреля 2011

1, без каких-либо колебаний. Смешивание растровых изображений очень и очень дорого с точки зрения использования процессора, вы определенно хотите этого избежать.

Теперь, если вы занимаетесь рисованием, я бы порекомендовал дать OpenGL | ES шанс. Apple даже предоставляет хороший пример GLPaint. Вы можете добиться очень впечатляющих результатов, используя шейдеры GLES 2. Но это может выйти за рамки вашего вопроса, хотя: -)

...