我有两个 UIImageViews 的视图。第一个uiimageview是一张图片,可以改变但总是在同一个位置。第二个 uiimageview 包含一个 logo 的 uiimage,这个 uiimageview 可以调整大小、平移和旋转。
顺便说一下,两个 uiimageviews 都设置为 Aspect Fit。
当我完成第二个uiimageview的拖动和缩放后,我想保存这两个uiimage,并绘制一个uiimage。但是在新的 uiimage 中,我需要在完成拖动并调整第二个 uiimageview 的大小后将它们完全定位。
我将这个组合的 uiimage 推送到一个名为 PreviewViewController 的新 uiviewcontroller。在这里,我想在图像视图中显示 uiimage,如果用户按下是,则保存它。
我几乎让它工作了,但是 x 和 y 的位置让我感到困惑。还有一个问题,当将第二个 uiimageview 图像绘制到新图像上时,它的视图模式看起来像 Scale to fill 并且看起来很难看。
这是我的代码
- (UIImage *)combineImages{
UIImage *tshirt = self.tskjorteTemplateView.image;
UIImage *logo = self.bildeView.image;
UIGraphicsBeginImageContext(self.tskjorteTemplateView.image.size);
UIGraphicsBeginImageContextWithOptions(self.tskjorteTemplateView.frame.size, NO, 0.0);
[tshirt drawInRect:CGRectMake(0,0, self.tskjorteTemplateView.frame.size.width, self.tskjorteTemplateView.frame.size.height)];
[logo drawInRect:CGRectMake(bildeView.center.x - (bildeView.frame.size.width / 2) ,
bildeView.center.y - (bildeView.frame.size.height / 2), self.bildeView.frame.size.width, self.bildeView.frame.size.height)];
UIImage *result = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return result;
}
它在这里调用:
fullPreviewImage = [self combineImages];
WantToSaveViewController *save = (WantToSaveViewController *)segue.destinationViewController;
save.delegate = [self.navigationController.viewControllers objectAtIndex:0];
save.previewImage = fullPreviewImage;