2013-12-03 5 views
0

Через обнаружение лица я хочу размыть глаза и рот человека. Таким образом, у меня есть imageView, который содержит 3 subviews (2 на глаз и рот). Каждое из этих подзонов было замаскировано формами PNG (с четким фоном), чтобы избежать появления прямоугольника. Мой ImageView в экране остаются так: http://screencast.com/t/ak4SkNXM0IПолучите UIImage из UIImageView с замаскированными подзонами

И я хочу, чтобы получить изображение для хранения в другом месте, поэтому я попытался это:

CGSize size = [imageView bounds].size; 
UIGraphicsBeginImageContext(size); 
[[imageView layer] renderInContext:UIGraphicsGetCurrentContext()]; 
UIImage *finalImage = UIGraphicsGetImageFromCurrentImageContext(); 
UIGraphicsEndImageContext(); 

Но finalImage изображение так:

http://screencast.com/t/eDlvGqqY

Мои подвид (глаза и рот) не замаскированы, как указано выше.

Любая идея?

Спасибо.

Edit:

Я должен использовать библиотеку совместима с iOS6

ответ

0

Вы можете проверить новый API добавлен в iOS7. Попробуйте воспользоваться одним из следующих способов:

  • snapshotViewAfterScreenUpdates:

  • resizableSnapshotViewFromRect:afterScreenUpdates:withCapInsets: для перезначительных изображений

  • drawViewHierarchyInRect:afterScreenUpdates:

+0

Спасибо за ваш ответ, но мой App должен быть сделан для iOS6 :( – mzurita

Смежные вопросы