UIButton.titleLabel.shadowOffset プロパティにより影がシャープになるため、 drawTextInRect メソッドを変更して、以下のように半径のカスタム シャドウを作成しました。
CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
float colorValues[] = {0, 0, 0, opacity};
CGColorRef shadowColor = CGColorCreate(colorSpace, colorValues);
CGSize shadowOffset = CGSizeMake(offsetX, offsetY);
CGContextSetShadowWithColor (context, shadowOffset, radius, shadowColor);
これはうまくいきます。それは影を作ります。titleLabel の境界を変更し、 drawTextInRect メソッドを次のように呼び出しました。
button.titleLabel.bounds = CGRectMake(button.titleLabel.bounds.origin.x, button.titleLabel.bounds.origin.y, button.titleLabel.bounds.size.width, button.titleLabel.bounds.size.height);
[button.titleLabel drawTextInRect:button.titleLabel.bounds];
[button setNeedsLayout];
titleLabel 境界のため、影がクリッピングしています。
どんな助けでも大歓迎です...