Когда вы масштабируете объект UIImageView внутри UIScrollView, вы изменяете только фрейм UIImageView, но UIImage в свойстве изображения остается неизменным.
Если вы хотите показать это изображение только в некотором другом UIImageView, вам не следует изменять размер UIImage, просто установите новый кадр UIImageView так же, как кадр увеличенного UIImageView из UIScrollView и используйте то же изображение:
UIImageView * ImageViewOnScroll;
//set image and zoom it
...
UIImageView * newImageView = [[UIImageView alloc] initWithImage:ImageViewOnScroll.image];
newImageView.frame = ImageViewOnScroll.frame;
если по какой-то причине вы хотите создать новый UIImage с измененным размером, вы можете сделать это, например, следующим простым методом:
UIImage * resizeImage(UIImage * img, CGSize newSize){
UIGraphicsBeginImageContext(newSize);
//or other CGInterpolationQuality value
CGContextSetInterpolationQuality(UIGraphicsGetCurrentContext(), kCGInterpolationDefault);
[img drawInRect:CGRectMake(0, 0, newSize.width, newSize.height)];
UIImage * newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return newImage;
}