2010-10-04 61 views
0

我有一個帶有一些數學方程的SVG文件。可以說我將這個文件包含到我的html文檔中。現在我想要做的是在html文檔中使用javascript對svg的內容進行一些簡單的修改。使用javascript編輯嵌入式SVG文件的內容

的具體例子
我的SVG文件中包含該方程的一個很好的格式化版本:

的x^2 + 2X + 1 = 0

和我想做如下修改:

  1. 色在X^2紅
  2. 取出等式中的2 x

謝謝。

+0

美國數學學會厭倦了網上數學標記的不良支持,所以他們聘請了一些程序員。他們的使命,使數學出現_任何意味着必要的。結果是Mathjax。瀏覽器支持MathML?它使用它。支持SVG?它使用它。支持CSS?它使用它。你所要做的就是直接在HTML中輸入LaTeX。請參閱:[鏈接](http:// http://www.mathjax.org/demos/tex-samples/)。 – 2014-03-29 19:45:09

回答

1

您需要做的是將自己附加到SVG圖像的加載事件上。有一個很好的SVG jQuery Plugin爲你做的(以及更多):

你還應該看看David Dailey在Javascript animating SVGs上的優秀資源。

+0

謝謝。這正是我所要求的。儘管我發現了一個更簡單的解決方案來編寫我的數學方程。我只是將我的latex-equations轉換成png。然後使用Raphaël將它們添加到畫布上。當我想改變我的公式時,我只是用一個新的PNG文件更新圖像。這個解決方案需要很少的編碼,但是以加載大量png文件爲代價。 – Michael 2010-10-05 11:43:37

+0

我總是喜歡需要較少編碼的解決方案。如果您的問題確實是關於數學方程式,您還應該閱讀「MathML」。最近的瀏覽器支持MathML - IE除外。 – 2010-10-05 11:54:09

0

如果你想要交互式數學方程,那麼你可能想看看JSXGraph

+0

我目前只是需要顯示方程本身,不過謝謝:) – Michael 2010-10-05 11:47:28

+0

啊,我的不好:)誤解你的問題,以爲你正在顯示該函數的情節。假設你的方程是文本,只需在你想要的部分周圍包裝一個tspan元素,例如,g' x^2'。爲了從等式中「刪除」一個部分,假設這意味着你想暫時隱藏它,你可以在2X部分使用'display =「none」'(如果需要,再次將它包裝在tspan中)。 – 2010-10-05 13:19:46

0

Clippy
它看起來像你想顯示的數學方程作爲SVG。
看看MathJAX

http://docs.mathjax.org/en/latest/output.html

目前,MathJax可以通過三種方式呈現數學:

使用HTML與CSS的奠定了數學,
使用SVG到佈置數學,
或使用瀏覽器的原生MathML支持。