2013-04-02 109 views
0

我是SVG和Raphael.js的新手,所以雖然我已經編寫了代碼,但我希望/想要的作品,我想檢查我所做的是最佳做法/正確的方式,或者如果有更好的方法。使用Raphael.js轉換SVG路徑

我有一個路徑,它基本上是一個非圓(根據品牌)。我通過將PNG轉換爲SVG(在線)獲得了路徑。我遇到的問題是當圖像的尺寸爲72x72像素時,在線轉換器將其縮放到相當大的尺寸。

這實際上對我有利,因爲我需要使用各種尺寸的圓。

因此,我使用.transform()將其縮小並將其轉換爲我需要的大小。這感覺就像一個黑客。有沒有更好的辦法?或者這是你能做的最好的?

這是我的代碼:http://jsfiddle.net/9LHUE/

在此先感謝。

回答

1

使用.transform()就好了。 「可縮放矢量圖形」的整體思想是,它們具有可擴展性。由於它們是從基於座標的定義渲染到頁面上的,因此它們在任何尺寸上都應該看起來一樣好。

對我來說,感覺就像是從png中導入這個很好的幾何圖形,而不是用更爲數學的方式處理定義。我懷疑你真的需要如此簡單形狀的怪異的貝塞爾曲線。

這就是說,我不知道什麼是「不在圈子」。也許這並不簡單。

+0

我的問題是「脫圈」是客戶的品牌。這不是一個圓圈。更像一個頭! – jamesmhaley

+0

我發現Inkscape在這種情況下非常有用。只需導入PNG並使用鋼筆工具在其上繪製曲線即可。一旦它看起來不錯,在XML編輯器中使用路徑數據。我不確定,但我會想象你用這種方式繪製的曲線不會比從PNG生成的曲線複雜,更不用說你可以根據需要調整它。只是我的兩分錢。 –