4

に影が存在する場合は、影を含めてCALayerをレンダリングしたいと思います。UIImageCALayer

shadowRadiusこれはすべて正常に機能しますが、ポイント/ピクセルとの関係が(経験的に)判断できない場合を除きます。

つまり、背景が透明で、ターゲットの影CALayerを含むサイズが膨らんだ親を作成します。CALayer次に、親をレンダリングしますCALayer

{width, height}経験的には、親レイヤーのサイズをターゲットレイヤーのサイズに設定することで、shadowRadiusのシャドウ全体を厳密に含めることができるようですsize + 3.75 * shadowRadius.{width,height}

それはちょっと奇妙でハックっぽいです、そして私は本当の答え/派生を知りたいです。

ぼかしはガッシアンぼかしのようですので、これはどういうわけか答えに関係していると思います...

2 * shadowRadiusを使用すると、明確にクリップされます。

ここに画像の説明を入力してください

5 * shadowRadiusの使用は明らかに大きすぎます:

ここに画像の説明を入力してください

そして3.75*shadowRadiusはスポットになっているようです(しかしなぜ?!):

ここに画像の説明を入力してください

4

0 に答える 0