Объединить два UIView в один UIImage - PullRequest
2 голосов
/ 24 марта 2011

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

Итак, вот домашнее задание:

  1. вращение контекста на основе значения поворота преобразования представления
  2. позиционирование на начало координат, когда пользователь закончил панорамирование наложения
  3. рассчитать размер наложения (это всегда прямоугольник, однако!)

Я собираюсь объединить их в один и тот же кусок кода:

UIGraphicsBeginImageContext...
...
UIImage *result = UIGraphicsGetImageFromCurrentImageContext(); 
UIGraphicsEndImageContext();

но ... что значит "лучше всего подходит" вместо "..."?

Пример кода хорошо принят! Спасибо

1 Ответ

3 голосов
/ 24 июня 2011
UIGraphicsBeginImageContext(firstImage.size);
[firstImage drawAtPoint:CGPointMake(0,0)];
[secondImage drawAtPoint:CGPointMake(0,0)];

UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext(); 
...