сохранить захваченное изображение с наложенным изображением в фотоальбом в iphone - PullRequest
0 голосов
/ 14 октября 2011

Как я могу объединить захваченную фотографию из UIImagePickerController и вида наложения камеры?Затем я хочу сохранить его в альбом фотографий.

Нужна помощь в этом.

Ответы [ 3 ]

3 голосов
/ 11 ноября 2011

Я бы создал контекст изображения, а затем записал в него оба изображения.Затем используйте UIImageWriteToSavedPhotosAlbum для сохранения в альбом.Вот пример, где я помещаю логотип на сохраненное изображение при вызове с кнопки.В вашем случае имидж бренда будет вашим оверлеем, а imageToSave будет изображением из UIImagePickerController.Изменить в соответствии с.Надеюсь, это поможет:

 - (IBAction)saveImage:(id)sender{

    //add brand to image
    UIImage *BrandImage = [UIImage imageNamed:@"brand.png"];
    UIImage* imageToSave = [imageView image]; //get current imageView
    CGSize targetSize = CGSizeMake(self.imageView.image.size.width, self.imageView.image.size.height);
    CGRect imageRect = CGRectMake(0, 0, self.imageView.image.size.width, self.imageView.image.size.height);

    //get screen size for retina or non retina
    UIScreen *MainScreen = [UIScreen mainScreen];
    UIScreenMode *ScreenMode = [MainScreen currentMode];
    CGSize Size = [ScreenMode size];

//position brand logo according to screen size
    if (Size.width == 640) {
        topImageRect = CGRectMake(self.imageView.image.size.width - 160, self.imageView.image.size.height - 80, 141, 53);
    }
    else
    {
        topImageRect = CGRectMake(self.imageView.image.size.width - 80, self.imageView.image.size.height - 40, 71, 27);
    }


    UIGraphicsBeginImageContext(targetSize);
    CGContextRef context = UIGraphicsGetCurrentContext();       
    UIGraphicsPushContext(context);                             

    [imageToSave drawInRect:imageRect];
    [BrandImage drawInRect:topImageRect];

    UIGraphicsPopContext();                             

    // get a UIImage from the image context
    UIImage* SavedImage = UIGraphicsGetImageFromCurrentImageContext();

    // clean up drawing environment
    UIGraphicsEndImageContext();

    // Save it to the camera roll / saved photo album
    UIImageWriteToSavedPhotosAlbum(SavedImage, nil, nil, nil);

}
0 голосов
/ 14 октября 2011

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

Это должно помочь ... Как сделать снимок экрана программно

0 голосов
/ 14 октября 2011

Я думаю, что это может помочь в работе с видом наложения камеры и сохранением кликаемого изображения наложения в библиотеку. http://red -glasses.com / index.php / tutorials / ios4-take-photos-with-live-video -Preview-используя-avfoundation /

...