エンボス効果を作成するために、いくつかのテキストに2つの異なる影を描くことにしました。これが私の最初の影でテキストを描く部分ですdrawInRect
(使用されるすべての変数はすでに定義されています):
CGContextSetShadowWithColor(context, textInnerShadowOffset, textInnerShadowBlurRadius, textInnerShadowColor.CGColor);
[textColor setFill];
[self.text drawInRect:rect withFont:self.font lineBreakMode:self.lineBreakMode alignment:self.textAlignment];
しかし今、私は2番目の影を描くという問題に直面しています。シャドウを変更してテキストを再度描画する必要があると思いますが、テキストのコピーをもう1つ追加せずに変更する必要があります。
テキスト自体を実際に描画せずにテキストを描画するにはどうすればよいですか?塗りつぶしの色をに変更してclearColor
も機能しません。私は人々がこれにクリッピングマスクを使用するのを見てきましたが、AFAICTはテキストではなく単純な形状でのみ機能します。
または、同じテキストに2つの影を描く簡単な方法はありますか?