我有一些透明背景的PNG,我想以编程方式添加阴影。我已经看到了为方形物体添加阴影的例子,但没有看到任何复杂的形状。
所以我认为我必须做的两个步骤是:
我在Cocoa中绘制的经验不多,所以对于从哪里开始的任何见解都将非常感激!
截图: alt text http://www.iworkinprogress.com/images/pngExample.png
答案 0 :(得分:3)
最简单的方法是在绘制图像之前在CGContextSetShadow
中调用drawRect:
。
- (void)drawRect:(CGRect)invalidRect
{
CGContextRef c = UIGraphicsGetCurrentContext();
CGContextSetShadow(c, CGSizeMake(5.0f, 5.0f), 5.0f);
[myImage drawAtPoint:CGPointMake(50.0f, 50.0f)];
}
答案 1 :(得分:1)
我发现这个类别非常有用:UIImage + Shadow.m
答案 2 :(得分:0)
我不是一个真正的图形人,但是这个怎么样:如果你有这些图像的掩码,或者如果你可以用编程方式创建一个,那么你可以使用模糊功能添加阴影效果。
在Photoshop / Acorn / Pixelmator中进行实验?
答案 3 :(得分:0)
因为你想要阴影,就像它们都拥有相同的光源一样......看起来你可能会更好地使用OpenGL视图,从上方投射光线,图像将略微位于平面上方以进行投射一个影子。我会寻找可以让你轻松添加东西的3D OpenGL框架......