2012-01-14 9 views
1

私は同じ質問についてはStackoverflowの周りを検索しましたが、私の質問のように見えるすべての質問はXcode(iPhone)でプログラミングされています。私はJavascriptを使用していますが、これをどのように解決するかはわかりません。Javascriptでサークルの周りのテキスト

スターを作成しました(RaphaelJSに基づいています)。その星には可変のスターポイントがあるので、8ポイントのスターになることもできますが、9または10または11にもなります。私の質問は、そのスターの周りの円の中にテキストを入れることです。スターが8ポイントを持っている場合、それはすべてのポイントを持っています(それは8ワードです)。

私は私の問題はので、多分私の質問を明確にすることを、Illustratorで示している。将来的には(私は画像でそれをやっているこの瞬間に

Image

、それは柔軟ではありませんIデータベースを使って星と言葉を生成する)。私はたくさんの検索をしました。私はこれが可能な技術がSVGであることを発見しました。しかし、多くの時間の試行錯誤の後、私は私のイメージと似た何かを持っていません。

+0

http://stackoverflow.com/questions/6061880/html5-canvas-circle-textにはいくつかのヒントが含まれている可能性があります。 –

+0

@SergeyKudriavtsevはい、Canvasは使用できません。(HTML5)Internet Explorer 7と8はそれをサポートしていません。 – Leander

+0

IEの場合はcanvasサポートを提供するexcanvas.jsライブラリがあります。 – dfsq

答えて

0

これは私が追加した最後のものだったので、どこに点があったのか忘れていましたが、thisは私が純粋なCSSを使ってノックしたものです。基本的にアイデアはすべてのテキストdivの中心に絶対に配置して開始し、個別にそこから移動します。私はいくつかのjsと狡猾な数学でこの考え方を拡張するのは非常に簡単だと思います。

1

SVGでこの図形を簡単に作成できます。スターを作成するにはpolygonを使用し、スターを囲むテキストを作成するにはtexttextPathを使用してください。

SVGの例については、this websiteを参照してください。

SVG specificationの関連セクションもご覧ください。

+0

Thxしかし、私はRaphaelJSで既に星を作成しています(SVGに基づいています)。したがって、これを解決する唯一の方法はSVGを使用することですか?しかし、私はSVGで単語を位置付けることができますか?空白で長い文字列を作成するのは柔軟ではないと思います。そして、スターが12ポイント(12ワードなので)のときに、この技術はどのように機能しますか? – Leander

+0

キャンバス上にテキストや星印を描くこともできますが、それ以上の労力がかかります。問題は、将来的にテキストと形状の情報がdbから来るので、最も柔軟な方法です。 SVGは、テキストと座標を簡単に交換することができる最も柔軟なソリューションです。 –

関連する問題