2010-10-05 102 views
2

我有一個web服務,它返回一串svg代碼。我的問題是,我不知道該怎麼辦。我從來沒有使用過SVG。我的問題是:以HTML格式顯示SVG

  1. SVG是否有普通瀏覽器的強大支持?
  2. 我該如何顯示SVG代表的圖像?

回答

1

SVG幾乎所有主流瀏覽器都支持,除了IE我認爲,但也可以用一些插件渲染。 IE VML呈現

我建議使用RaphaelJS http://raphaeljs.com/reference.html#image

編輯:

var r = Raphael("holder", 600, 540); //"holder" is the id of an empty div in html file 
r.image("lion.svg", 140, 140, 320, 240);// r.image(src,x,y,width,height) 
+0

Rapheal支持加載SVG嗎?我有一些現有的SVG XML,但基於文檔,我不知道如何。我錯了嗎? – user462166 2010-10-05 20:47:33

+0

我已經編輯了一些基本代碼的帖子:你可以看看拉斐爾上的演示例如:http://raphaeljs.com/reflection.html這裏它加載了一個jpg,你可以用svg代替路徑。如果您對jQuery感到滿意,請嘗試使用http://keith-wood.name/svg.html – jknair 2010-10-06 03:35:20

0

與HTML5開始,你可以在HTML文檔中直接嵌入SVG。除Internet Explorer之外,所有主要的現代瀏覽器都支持此功能。您可以使用HTML畫布概念(如圖所示here

但是,因爲你極有可能不能離開IE鄉親背後的是,你可以用所示here

0

大多數國有三個傳統選項之一去最先進的瀏覽器支持SVG, ,但很少仍使用瀏覽器(例如Internet Explorer 7)失敗。 因此,爲了完美的兼容性,你應該堅持gif,jpg或png格式。 在這裏測試你自己的瀏覽器:http://alphanemoon.com/2008/artikel/inline-svg-browser-test.xhtml

+0

Internet Explorer 8也缺乏對SVG的支持。 – colinmarc 2010-10-05 19:43:36

1

Svg是一個XML規範。大多數現代瀏覽器可以直接顯示它,但Internet Explorer不能。

我建議將所有的svg內容包裝在svgweb之內,這是svg代碼的一個薄層。如果用戶使用符合標準的瀏覽器,則它將正常顯示svg。否則,它會將其轉換爲Flash內容。