我有一些具有透明背景的PNG,我希望以編程方式添加陰影。我已經看到了爲方形對象添加陰影的示例,但沒有看到任何複雜的形狀。使用Cocoa將陰影添加到PNG
所以這兩個步驟,我認爲我必須做的是:
- 隔離PNG形狀
- 畫出模糊的背後PNG的形狀,褪色和偏移。
我沒有太多的Cocoa繪圖經驗,所以任何有關從哪裏開始的洞察力將非常感謝!
截圖: alt text http://www.iworkinprogress.com/images/pngExample.png
我有一些具有透明背景的PNG,我希望以編程方式添加陰影。我已經看到了爲方形對象添加陰影的示例,但沒有看到任何複雜的形狀。使用Cocoa將陰影添加到PNG
所以這兩個步驟,我認爲我必須做的是:
我沒有太多的Cocoa繪圖經驗,所以任何有關從哪裏開始的洞察力將非常感謝!
截圖: alt text http://www.iworkinprogress.com/images/pngExample.png
最簡單的方法是在繪製圖像之前,在您的drawRect:
中調用CGContextSetShadow
。
- (void)drawRect:(CGRect)invalidRect
{
CGContextRef c = UIGraphicsGetCurrentContext();
CGContextSetShadow(c, CGSizeMake(5.0f, 5.0f), 5.0f);
[myImage drawAtPoint:CGPointMake(50.0f, 50.0f)];
}
我不是一個真正的圖形的人,但對於這一點:如果你對這些圖像的面膜,或者您可以編程方式創建一個,那麼你也許可以使用模糊函數添加一個像效果一樣的陰影。
Photoshop/Acorn/Pixelmator中的實驗?
試圖以編程方式做到這一點,所以,當他們在應用程序正在旋轉,他們似乎有相同的光源。 – 2010-01-30 18:12:42
既然你想要的陰影像他們都具有相同的光源......好像你實際上可能是有一個OpenGL視圖,從上方投射光富裕和圖像將一個平面上面稍微坐投下陰影。我會尋找3D OpenGL框架,可以讓你很容易地添加東西...
我發現這個類別是非常有用的:UIImage的+ Shadow.m
謝謝。經過一些重組,得到了這個工作。 – 2010-01-31 16:02:00