2013-04-09 23 views
7

私は画像に長方形を描くためにRafael.jsを使用しています。ストロークの色を設定する際の私の問題は、背景が暗いまたは明るいまたは任意の色かもしれないということです。私はそれに対処する最善の方法は破線を使用すると思った。ただし、この電話Rafael.jsを使用して破線の四角形を描画

circle = Canvas.paper.rect(left, topCoord, width, height).attr({stroke-dasharray:"---"}); 

は機能しません。 Firebug(FireFox 20.0)は、.jsファイルの既存の関数が存在しないというエラーメッセージを返します。ストロークダッシュアレイは長方形には有効ではないようです。

答えて

8

基本的なJavaScriptエラー:

{stroke-dasharray:"---"} 

は次のようになります。また

{"stroke-dasharray":"---"} 

"---"stroke-dasharrayでサポートされている値ではありません。それは次のようになります。

{"stroke-dasharray":"--"} 
+0

ありがとうございました。これでエラーは消えましたが、私はまだ矩形の黒い線が黒くなっています。ありがとう、ピーター。 – OtagoHarbour

+1

[Raphaelリファレンス](http://raphaeljs.com/reference.html)を見ると、3つのダッシュは有効なオプションではないと思います。 2つを試してください: '' - "' – searlea

+0

これは破線を得るために働いていました。どうもありがとう! 2つの異なる色を取得するには、{"stroke-dasharray": " - "}と{"stroke": "white"、 "stroke-dasharray": " - .." }。どうもありがとう! – OtagoHarbour

9

いいえ「---」、可能なストローク-dasharray:ストロークを着色する[“”, “-”, “.”, “-.”, “-..”, “. ”, “- ”, “--”, “- .”, “--.”, “--..”]

一つの方法は、反対(または近くを選択し、その後、HSVまたはHSLスペースを使用することです)スペクトル。以下から回答をお試しください:Given an RGB value, how do I create a tint (or shade)?

+0

興味深い。私は、理想は下のイメージとxorになると思うが、ラファエルはそのオプションを持っていないようだ。ありがとう、ピーター。 – OtagoHarbour

+0

一部のブラウザでは、操作をサポートして、周囲にグローを作成することができます。 http://commons.oreilly.com/wiki/index.php/SVG_Essentials/Filtersを試してみてください。 –

関連する問題