4

プログラムで影を追加したい透明な背景のPNGがいくつかあります。正方形のオブジェクトに影を追加する例を見たことがありますが、複雑な形状の例は見たことがありません。

したがって、私がしなければならないと思う2つのステップは次のようになります。

  • PNGの形を分離する
  • PNGの背後に、ぼやけ、色あせ、オフセットされた形状を描画します。

私はCocoa内での描画の経験があまりないので、どこから始めればよいかについての洞察をいただければ幸いです。

スクリーンショット:( 出典:iworkinprogress.com代替テキスト

4

4 に答える 4

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)];
}
于 2010-01-31T00:15:56.693 に答える
1

このカテゴリは非常に便利であることがわかりました:UIImage + Shadow.m

https://gist.github.com/kompozer/387210

于 2014-03-18T18:44:08.887 に答える
0

私は実際にはグラフィックスの人ではありませんが、これについてはどうでしょうか。これらの画像のマスクがある場合、またはプログラムで作成できる場合は、ぼかし機能を使用して影のような効果を追加できます。

Photoshop / Acorn / Pixelmatorで実験しますか?

于 2010-01-30T18:04:30.427 に答える
0

すべて同じ光源を持つような影が必要なため、OpenGLビューを使用した方が実際には良いようです。これは、上から光を放ち、画像は平面の少し上に配置されて影を落とします。 。非常に簡単に追加できる3DOpenGLフレームワークを探しています...

于 2010-01-30T18:54:56.407 に答える