2013-04-09 2 views
7

Sto utilizzando Rafael.js per disegnare rettangoli su un'immagine. Il mio problema con l'impostazione del colore del tratto è che lo sfondo potrebbe essere scuro o chiaro o di qualsiasi colore. Pensavo che il modo migliore per affrontarlo sarebbe utilizzare le linee tratteggiate. Tuttavia questa chiamataDisegno di un rettangolo con linee tratteggiate utilizzando Rafael.js

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

non funziona. Firebug (su FireFox 20.0) restituisce un messaggio di errore che dice che una funzione esistente nel mio file .js non esiste. Sembra che stroke-dasharray non sia valido per i rettangoli.

errore

risposta

8

base JavaScript:

{stroke-dasharray:"---"} 

dovrebbe essere:

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

anche: "---" non è un valore supportato per stroke-dasharray; dovrebbe essere:

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

Grazie. Ciò ha fatto sì che l'errore andasse via, ma sto ancora ottenendo linee nere solide per il rettangolo. Grazie, Peter. – OtagoHarbour

+1

Guardando il [riferimento Raphael] (http://raphaeljs.com/reference.html) non penso che tre trattini siano un'opzione valida. Prova due: '" - "' – searlea

+0

Che ha funzionato per ottenere linee tratteggiate. Grazie mille! Per ottenere due colori diversi, ho bisogno di due chiamate: una con {"stroke-dasharray": "-"} e una con {"stroke": "white", "stroke-dasharray": "- .." }. Grazie mille! – OtagoHarbour

9

No "---", possibile ictus-dasharray: [“”, “-”, “.”, “-.”, “-..”, “. ”, “- ”, “--”, “- .”, “--.”, “--..”]

Un modo per colorare la corsa è quello di utilizzare la HSV o HSL spazio, quindi scegliere il contrario (o nelle vicinanze) spettro. Prova le risposte da: Given an RGB value, how do I create a tint (or shade)?

+0

Interessante. Penso che l'ideale sarebbe quello di xor con l'immagine sottostante, ma Rafael non sembra avere questa opzione. Grazie, Peter. – OtagoHarbour

+0

Alcuni browser possono supportare la manipolazione per creare un bagliore attorno ad esso. Prova http://commons.oreilly.com/wiki/index.php/SVG_Essentials/Filters –