Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 如何将对象放置在图像上并存储它_Iphone_Ios_Image Processing_Ios6_Uiimageview - Fatal编程技术网

Iphone 如何将对象放置在图像上并存储它

Iphone 如何将对象放置在图像上并存储它,iphone,ios,image-processing,ios6,uiimageview,Iphone,Ios,Image Processing,Ios6,Uiimageview,我正在创建一个“cartoonizer”应用程序,它将图像作为输入,并对其进行修改,以便将其格式化为漫画风格 目前,原始图像存储在UIImageView中,我通过执行以下操作来访问它: imageView.image 我想知道是否可以在imageimageView.image(像气球一样)上定位一个对象,然后将该对象存储在图像上,就像它最初是图像内容的一部分一样 提前谢谢。您可以这样做,前提是顶部图像的不透明度正确 正如您所说,您可以从imageView获取图像。图像: 从这里开始: 这里有更

我正在创建一个“cartoonizer”应用程序,它将图像作为输入,并对其进行修改,以便将其格式化为漫画风格

目前,原始图像存储在
UIImageView
中,我通过执行以下操作来访问它:

imageView.image
我想知道是否可以在image
imageView.image
(像气球一样)上定位一个对象,然后将该对象存储在图像上,就像它最初是图像内容的一部分一样


提前谢谢。

您可以这样做,前提是顶部图像的不透明度正确

正如您所说,您可以从imageView获取图像。图像:

从这里开始:


这里有更多的合成技术:

如果我想保持它的可点击性呢?比如,如果我想让用户在图像周围移动它,调整它的大小……那么您需要将UIImageView子类化,并覆盖touchBegind/moved/ended。如果你想保持可点击,那么你就不想合成(将图像嵌入到一起以创建一个新图像),这正是我想问的。嵌入是最后一步:当有人按“保存”以保存漫画时,你将图像混合在一起(因此,对于这一部分,你的解决方案很好)。然而,这取决于用户放置气球的位置以及气球的大小。因此,至少在第一个交互步骤中,顶部图像应该是可单击的。这很好,在这种情况下,使用子类UIImageview来定位图像,当您决定混合时,将两个UIImageview图像都拉出,将它们存储在两个UIImages中并使用我的解决方案。
UIImage *bottomImage = [UIImage imageNamed:@"bottom.png"];
UIImage *image = [UIImage imageNamed:@"top.png"];

CGSize newSize = CGSizeMake(width, height);
UIGraphicsBeginImageContext( newSize );

// Use existing opacity as is
[bottomImage drawInRect:CGRectMake(0,0,newSize.width,newSize.height)];
// Apply supplied opacity
[image drawInRect:CGRectMake(0,0,newSize.width,newSize.height) blendMode:kCGBlendModeNormal alpha:0.8];

UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();

UIGraphicsEndImageContext();