1

iOS アプリでシースルー テキスト スタイル効果を実現したいと考えています。Photoshop で目的の効果を作成するのは非常に簡単ですが、これをコードで実現する方法がわかりません。

テキストに適用される効果は、テキストの下の背景を表示するだけですが、表示されるように暗く (または明るく) されます。テキストの塗りつぶしはまったくありません。テキストがある場所の背景を強調するだけです。

これは私が取得したいものです:
ここに画像の説明を入力
ここに画像の説明を入力

この効果は、iOS 7.1 以降 (スライド アニメーションが発生する前) の "スライドしてロックを解除" というテキストに似ていますが、もっと多くの画像が透けて見えるようにしたいと思います。

どうすればそのような効果を生み出すことができるでしょうか? iOS 8 以降をサポートするだけで済みます。

これは、Photoshop で効果を作成する方法です (おそらくもっと簡単な方法があります)。

  1. 画像を開く
  2. 画像を別のレイヤーに複製します
  3. ブレンドモードを変更します(オーバーレイを暗くするか、スクリーンを明るくします)
  4. レイヤーマスクを追加する
  5. Option/alt でレイヤーマスクをクリックし、塗りつぶしを黒に変更します
  6. 必要な場所に白いテキストを追加
  7. レイヤーマスクをAltクリック

黒または白のラベルを作成して不透明度を下げるだけでは簡単ではありません。それを行うと、次のようになります。
ここに画像の説明を入力

4

3 に答える 3

2

Photoshop とまったく同じように行いますが、手順は少なくなります。

  • CALayer オブジェクトを作成し、それに雲の画像を貼り付けます。
  • CATextLayer オブジェクトを作成し、その中にテキストを入れます
  • CATextLayer のブレンド モードを設定します。Photoshop とほとんど同じブレンド モードのリストがあります。
  • テキストの色を白に設定します(NSAttributedStringを使用すると思います...思い出せません)
  • テキストレイヤーの不透明度を好みに合わせて微調整します。デフォルトは 1.0 で、見栄えがよくありません。

両方のレイヤーを UIView 内に配置します。

iOS 8 に限定する必要はありません。これらはすべて、iOS 1.0 に戻って機能します。

于 2014-08-04T05:36:29.110 に答える
0

iOS では、Swift 言語でコードを書きました。レイヤーを作成しました。レイヤー プロパティを layer.opacity = 0.5 に設定します。このプロパティは、必要に応じて透明に変更できます。このレイヤーにテキスト、描画などを追加します。レイヤーはシースルー効果があります

于 2015-04-22T12:37:23.850 に答える