2009-04-28 3 views
3

私はAS3でコーディングしており、画面に表示しているテキストにストロークを追加したいと考えています。私の現在のコードは次のとおりです。テキストが動的に生成されるAS3のテキストにストロークを追加するには?

format = new TextFormat("BN Elements", 14, 0xEEEEEE, false, false, false, null, null, "left"); 
format.font = "BN Elements" 
scoreText = initText(starsleftText, format, "", 160,5, 545, 61); 
scoreText = "Stroke This Text"; 

として、私には、Flash IDE内のテキストオブジェクトとして作成することはできません - 私は私がに設定されている「グロー」機能を使用することができ、ストロークを追加するために知っています1000%、低品質です。

AS3内の同様のプロパティを持つ「グロー」フィルタエフェクトを直接適用するにはどうすればよいですか?または、私が知らない別の「ストローク」機能がありますか?

答えて

5

それは非常に簡単です:

http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/filters/GlowFilter.html(例はページの一番下にあります)

私は、彼らは限り実際のストロークを追加するなど、新しいものを追加したかどうかわからないんだけど、グローフィルタの「ストローク」はコードと同様に機能します。あなたはまた、あなたの効果を超えるもう少しコントロールを与えるピクセルベンダーフィルターを作成することができ

:(

+0

また、テキストが選択可能な場合、グローフィルタを使用すると、選択範囲にストロークが追加されます。 – quoo

+1

私は「まあまあ」と言っているかどうかわかりません...イラストレーターで行われたコンプにマッチするように、グローベースのテキストストロークを取得しようと多くの時間を費やしました。 –

+0

私はあなたが私のコメントを間違って読んだと思う、私はそれが "まあまあ"ではなく "同様に"加えられると言った。 – quoo

1

フラッシュからそのストロークを生成しても、私はそこに任意の既に書かれたものを見つけるように見えることはできませんシェイプのエッジFlashでは、オーサリングではなく動的にテキストを使用しているため、オペレーティングシステムによって描画されたデバイステキスト、またはSWFファイルの埋め込みテキストのいずれかでレンダリングできます。最初のケースでは、Flashはストロークするためにエッジにアクセスできません(現在)。 2番目のフレームでは、ストロークをサポートしていないテキスト、またはソリッドカラーの塗りつぶしをサポートしていないテキスト用に特殊なサブレンダラーが使用されています。

短い答え:現時点ではテキストのストロークはサポートされていませんが、グローまたはピクセルベンダーのアプローチが推奨されます。

0

ただし、別の方法があります。 BlurFilterを使ってストロークを表示するのはどういうことですが、それはあまりにも多くのピクセル処理が行われているため、汚れていて非常に遅いですが、これは絶対に必要ではありません。

Pixel Benders PBJフィルタを使用することもできます(高速で便利な方法)。私は自分でストロークフィルターを書いたし、それは魅力のように機能する。必要に応じて元のイメージを分離することもできます。そのため、元のイメージを使用せずにアウトラインが得られます。

パラメータは以下のとおりです。

もpixel4色

フロート強度

フロートしきい値

はブールここでそれをダウンロードし、必要に応じてそれを使用

http://www.file-upload.net/download-7344877/Stroke.pbj.html

を分離します、 ifあなたは好きです。

FlashでPixel Bender Filtersを使用する方法がわからない場合は、googleはあなたの友人です。それについてのチュートリアルはたくさんあります。

関連する問題