4

我有一些具有透明背景的 PNG,我想以编程方式添加阴影。我见过为方形物体添加阴影的例子,但还没有见过复杂形状的例子。

所以我认为我必须做的两个步骤是:

  • 隔离PNG形状
  • 在 PNG 后面绘制一个模糊、褪色和偏移的形状。

我没有太多在 Cocoa 中绘图的经验,所以任何关于从哪里开始的见解都将不胜感激!

截图:( 来源:iworkinprogress.com替代文字

4

4 回答 4

3

最简单的方法是CGContextSetShadowdrawRect:绘制图像之前调用。

- (void)drawRect:(CGRect)invalidRect
{
    CGContextRef c = UIGraphicsGetCurrentContext();
    CGContextSetShadow(c, CGSizeMake(5.0f, 5.0f), 5.0f);
    [myImage drawAtPoint:CGPointMake(50.0f, 50.0f)];
}
于 2010-01-31T00:15:56.693 回答
1
于 2014-03-18T18:44:08.887 回答
0

我不是一个真正的图形人,但是这个怎么样:如果你有这些图像的遮罩,或者如果你可以通过编程方式创建一个,那么你可能可以使用模糊功能来添加类似阴影的效果。

在 Photoshop/Acorn/Pixelmator 中进行实验?

于 2010-01-30T18:04:30.427 回答
0

因为你想要阴影,就像它们都具有相同的光源......看起来你实际上可能会更好地使用 OpenGL 视图,它从上方投射光线,并且图像将位于平面上方以投射阴影. 我会寻找可以让您轻松添加内容的 3D OpenGL 框架...

于 2010-01-30T18:54:56.407 回答