我有一个在前台和透明背景黄色花瓶的图像:认沽边框部分透明的图片被绘制在CGContext上
我画它在CGContext上:
CGContextDrawImage(context, CGRectMake(0, 0, 100, 100), myImage.CGImage);
我可以CGContextDrawImage
之前使用下面的语句周围画一个阴影:
CGContextSetShadowWithColor(context, CGSizeMake(0,0), 5, [UIColor blueColor].CGColor);
但我想提出一个冲程的图像周围,这样它会看起来如下:
如果我这样做:
CGContextSetRGBStrokeColor(shadowContext, 0.0f, 0.0f, 1.0f, 1.0f);
CGContextSetLineWidth(shadowContext, 5);
CGContextStrokeRect(shadowContext, CGRectMake(0, 0, 100, 100));
它(显然)在整个图像周围绘制矩形边框,如下所示:
这不是我所需要的。
但是,在第三个图像中绘制边框的最佳方法是什么?
请注意,在这种情况下不可能使用UIImageView,因此使用UIImageView的CALayer的属性不适用。
在调用CGContextDrawImage之前调用'CGContextSetShadowWithColor'吗? – Ariel 2013-02-20 01:22:03
@elcanibal:是的。否则,不会有影子。我正在编辑原始问题以反映这一点。 – 2013-02-20 14:50:41
请张贴透明背景的黄色花瓶的PNG。您的第一张(未修改过的)图像背景为灰色。 – 2013-02-20 20:49:53