2013-03-01 158 views
1

我對SVG的一些模式,我應用到我的RECT創建在SVG圖形元素,代碼是這樣的使用拉斐爾

<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="100%" height="100%" style="position:absolute; top:0px; left:0px"> 
    <defs> 
    <rect id="unitsqr" fill="#DBDBDB" stroke="white" stroke-width="1px" x="0" y="0" width="12" height="12"/>  
    <pattern id="grid" width="10" height="10" patternUnits="userSpaceOnUse"> 
     <use xlink:href="#unitsqr" /> 
    </pattern> 
    </defs> 
    <rect fill="url(#grid)" x="0" y="0" width="100%" height="100%"/> 
</svg> 

我想要做一些動畫拉斐爾還留着我的網格,我不知道如何在raphael中創建一個模式,並稍後將其用作填充。無論如何,有沒有辦法做到這一點?

回答

1

當你做Element.attr("fill", "http://example.com/example.png")如果使用了SVG後端,Raphaël會爲你創建一個<模式>元素。但是在Raphaël中沒有高級API支持來創建和操作圖案填充。所以,無論你需要擴展Raphaël,還是你可以用普通的js來做,假設你不關心IE8及更低版本的VML後備。

0

正確的語法是

Element.attr("fill" , "url(http://exmaple.com/example.png)") ; 

你可以做時髦的東西像創建使用Raphael.path或Raphael.circle元素填充創建形如圓形或路徑的圖像輕鬆,設置填充到一個網址。