Программное изменение изображений - PullRequest
2 голосов
/ 29 сентября 2010

Я хотел бы изменить изображения программно.Специально для iPhone, но общие ответы могут помочь.Например, как я могу программно добавить эффекты фильтров, такие как те, что доступны в Photoshop.

Очевидно, что это возможно, например, в таких приложениях, как Fat Booth.Что является отправной точкой для этого?Загрузите изображение как NSData и узнаете, как кодируются PNG и переходите к работе с алгоритмом?Возможный?Более простые решения?

Спасибо за помощь!

Ответы [ 2 ]

1 голос
/ 09 мая 2011

Сначала получите изображение в необработанном формате (необработанное, как в необработанных байтах для каждого пикселя [rgb] [rgb]), затем управляйте пикселями и конвертируйте обратно из необработанного формата в изображение.

Здесь вы можете найти информацию о том, как преобразовать uiimage в необработанные данные пикселей, например:

Необработанный в UIImage: Создание UIImage из необработанных данных RGBA

UIimage to Raw: Могу ли я редактировать пиксели свойства UIImage CGImage

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

Вам не нужно знать, как изображения кодируются в PNG или JPG, это может сделать система за вас.Вам просто нужно знать, чего вы хотите достичь, а затем построить свой собственный алгоритм.

Получайте удовольствие!

1 голос
/ 29 сентября 2010

Глава 21 из Разработка iPhone SDK содержит пример того, как отображать и манипулировать фотографией, за которой довольно легко следить Более сложные эффекты требуют более сложного кода, но с этого нужно начинать.

...