我正在制作一个iPhone应用程序,其中有两个ImageView,当您触摸顶部的一个,无论您轻触哪一处,最下面的一个都会显示。如何在Quartz中剪切或更改图像的alpha(像素)?
基本上我想要做的是从图像中切出一个椭圆/圆角。要做到这一点,我正在考虑剪裁图像,或将矩形中的alpha像素更改为零。我是Quartz 2D Programming的新手,所以我不确定如何做到这一点。
假设我有:
UIImageView *topImage;
UIImageView *bottomImage;
如何从这些图像中删除的CGRect /椭圆/圆角矩形。 这就像那些彩票一样,如果你赢了,你必须刮掉。
那么,我该如何在这个方法中使用直接法? 我对Quartz – gizmoitai 2010-02-28 00:05:07
没有经验,因此有关实际裁剪的文档部分位于底部(对不起,我忘了提及这一点),但基本上会创建一个路径,在需要的地方绘制一个圆角矩形,剪辑上下文绘制图像,(取消剪切路径?),然后继续。我没有包含特定的代码,因为它不必要,只是在苹果文档中进行函数调用。谷歌也。这里有一些用于圆角矩形的东西 http://www.drobnik.com/touch/2010/02/drawing-rounded-rectangles/ – 2010-02-28 04:03:34
我试过这段代码: CGContextRef ctx = UIGraphicsGetCurrentContext(); \t CGRect frame = CGRectMake(100,100,100,100); \t CGPathRef roundedRectPath = [self newPathForRoundedRect:frame radius:5]; \t CGContextAddPath(ctx,roundedRectPath); \t CGContextClip(ctx); \t CGPathRelease(roundedRectPath); (与您发送的圆角矩形路径函数一起) 这是在一个白色的视图和视图下方有一个灰色的窗口,所以我认为这只会显示灰色,而不是在CGRect框架中的白色,但它没有做任何东西...... – gizmoitai 2010-02-28 05:18:18