Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.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_Ios6_Avcapturesession - Fatal编程技术网

Iphone 如何擦除图像层?

Iphone 如何擦除图像层?,iphone,ios6,avcapturesession,Iphone,Ios6,Avcapturesession,我真的很想知道我们如何擦除imageview层?我有一个应用程序,在这个应用程序中,我需要捕获两个图像,一个在另一个上,只需要改变背景。之后,我需要擦除第一次拍摄的图像层。我在谷歌上搜索了很多次,但找不到通过在背景图像上移动手指来擦除背景图像的方法。有人能告诉我一些关于它的想法吗 谢谢 好吧,你可以一直做imageView.layer.contents=nil,但我不确定这是否正是您所需要的 这是以下评论中的修改版本: 使用UIGraphicsBeginImageContext()创建图像上下文

我真的很想知道我们如何擦除imageview层?我有一个应用程序,在这个应用程序中,我需要捕获两个图像,一个在另一个上,只需要改变背景。之后,我需要擦除第一次拍摄的图像层。我在谷歌上搜索了很多次,但找不到通过在背景图像上移动手指来擦除背景图像的方法。有人能告诉我一些关于它的想法吗
谢谢

好吧,你可以一直做
imageView.layer.contents=nil,但我不确定这是否正是您所需要的

这是以下评论中的修改版本:


使用
UIGraphicsBeginImageContext()
创建图像上下文。可以通过调用-drawInRect:method绘制UIImageView,然后创建包含要“擦除”的区域的路径,并设置CGContextSetBlendMode(上下文,kCGBlendModeClear)。在该路径之后绘制路径,并通过调用UIGraphicsGetImageFromCurrentImageContext()捕获结果图像。然后调用UIGraphicsEndImageContext()进行清理。

谢谢。这将在一瞬间使imageview为零。我想让它像橡皮擦一样,在上面移动手指。好的,我现在明白了。嗯,正如我所想,你必须看看核心的图形方法。使用
UIGraphicsBeginImageContext()
创建图像上下文。您可以通过调用
-drawInRect:
方法来绘制UIImageView,然后您应该创建包含要“擦除”的区域的路径,并设置
CGContextSetBlendMode(上下文,kCGBlendModeClear)
。在该路径之后绘制路径,并通过调用
UIGraphicsGetImageFromCurrentImageContext()
捕获结果图像。然后只需调用
UIGraphicsEndImageContext()
进行清理。询问,如果这有帮助,或者你有任何其他问题。