SVG(Scapable Vector Graphics,可縮放矢量圖像)是互聯(lián)網聯(lián)盟(W3C)的正式推薦標準,它是一種使用XML來描述二維圖像的語言。SVG允許3種形式的圖像對象存在,分別是矢量圖形(如由直線、曲線等組成的路徑)、點陣圖像和文本。各種圖像對象能夠組合、變換,并且能修改其樣式,也能夠定義成預處理對象以便再用。SVG還支持各種特效,包括嵌套變換、路徑剪裁、透明度處理、濾鏡效果以及模板對象等。同時,SVG可以是互動和動態(tài)的,動畫可以直接加入SVG文本,也可以通過腳本加入。在新的SVG版本中,還可以表現(xiàn)視頻、音頻等其它信息。SVG通過使用腳本語言來完成比較復雜的應用,腳本語言調用SVG對象模型(SVG Document Object Model)來訪問或控制所有的元素、屬性和屬性值。任何一種SVG圖像元素都能使用腳本來處理類似鼠標單擊、雙擊以及鍵盤輸入等事件。由于SVG文本是XML名字空間中的有效字符,這些字符能作為SVG圖像的關鍵字而通過搜索引擎進行查詢。
與現(xiàn)有的圖像格式(如JPEG、GIF和PNG等)和矢量圖形格式(如VML、PDF、SWF等)相比,SVG具有如下優(yōu)勢:
1) 基于XML標準
XML是W3C的推薦標準,用于結構化的信息交換,已經得到廣泛的普及和應用。SVG是建立在此基礎上的,有很明顯的優(yōu)勢,如:廣泛的國際化基礎、強大的結構化能力、以及對象模型等。
2) 高質量的圖像
由于基于矢量,使得SVG圖像的質量得到大大的提高。放大、縮小以及各種特效都比位圖的表現(xiàn)要好,在打印的時候,完全可以印刷質量輸出圖片。SVG圖像在客戶端動態(tài)繪制,用戶可以隨意調整圖像的一些參數(shù)而不會導致圖像模糊。SVG圖像的大小只與圖形的復雜程度有關,而與圖形的具體尺寸無關。
3) 更精確的顏色
SVG可靠的顏色特性將給下一代在線電子商務帶來許多新的面貌——系統(tǒng)可以根據(jù)瀏覽器窗口的配色方案下載與之相匹配的配色方案。SVG支持ICC色彩概貌的行業(yè)標準,如sRGB。
4) 靈活易用的文件格式
SVG主要由3個部分組成:矢量圖形、位圖和文字。由于SVG文件是以文本的形式(XML)存放的,更改起來是非常方便的。也就是說,不用任何圖像處理工具,僅僅用記事本就可以生成一個SVG圖像。
5) 支持互動和動畫
SVG支持SMIL(synchronized multimedia integration language),允許用戶自由地同SVG中的元素完成一些互動,從而完成既定的目標,這一點在目前單獨依靠圖片是完成不了的,需要由網頁中的Script語句來實現(xiàn)。
6) 支持字符查找
由于SVG是文本格式,查找圖像中的字符在SVG中成為可能(在其它格式的圖像文件中是不可思議的)。
7) 支持Xlink 和Xpointer
可以在SVG文檔中加入超鏈接,這樣我們可以制作一個完全由SVG構成的WEB站點,這個站點可以包含圖片、動畫、文本等多媒體信息,并擁有與用戶進行互動的能力。
8) SVG是一種真正開放式的、不依賴供應商的2D矢量圖形格式
SVG由W3C開發(fā)和維護,W3C曾定義了HTML和XML這樣的開放標準。而且,SVG不屬于任何人,也沒有專利權。這意味著,不存在許可費用,供應商可以無縫地創(chuàng)作和分享內容。不同于Mac OS的PICT或Windows的WMF等其它矢量格式,SVG具有平臺獨立性。
9) SVG從開始設計,就注定是一種強大的通用標準
制訂SVG的W3C工作組成員包括Macromedia、Adobe和AutoDesk,它們都有強烈的意愿,盡量把支持其格式的更多功能包括在SVG里面。這使得SVG適用于范圍很廣的各種應用,包括CAD、GIS和娛樂。
Mobile SVG及其特點
由于SVG的大部分特性也非常適合于無線領域的圖形應用,無線領域要求開發(fā)更適合于移動設備上應用的SVG形式,為了滿足業(yè)界的需求,互聯(lián)網聯(lián)盟(W3C)的SVG工作小組制訂了適合于移動應用領域的專用標準Mobile SVG。由于移動設備在CPU速度、內存大小、支持的顯示顏色等各個參數(shù)上有很大的不同,單一的專業(yè)標準很難滿足所有移動設備的要求。所以,為了覆蓋不同移動設備家族的需求,SVG工作小組最終制訂了兩個級別的Mobile SVG專業(yè)標準。第一級別的專業(yè)標準是SVG Tiny (SVGT),適用于資源高度受限的移動設備,如手機;第二級別的專業(yè)標準是SVG Basic (SVGB),適用于高端的移動設備,如PDA等。由于移動設備的CPU速度、內存容量、顯示屏都比較小,相對于SVG,Mobile SVG在支持的內容、屬性、功能等方面作了限制。為了保持內容和處理軟件的兼容性,在制訂標準時,把SVGT列入SVGB的子集,把SVGB列入SVG的子集。按SVG格式制作的圖像在保持圖像線條等不變的同時,通過降低精度、省略線條的粗細和濃淡等信息標記可以將其轉換成SVG Basic和SVG Tiny格式。
Mobile SVG與位圖相比,在對動畫、地圖和互動圖形進行編碼和顯示方面的優(yōu)勢是明顯的。位圖是靜態(tài)的,而矢量圖形是動態(tài)的、可以縮放的,可以描述非常高級的圖形特點,如動畫、分層圖形、半透明對象、畫中畫、復雜形狀和字體效果。另外,Mobile SVG所制作的矢量圖形可以執(zhí)行交互式操作,如可以縮放、平移、附加鏈接。
利用Mobile SVG的縮放性,圖形就可以調整大小,以適應任何顯示器或打印機,或者分辨率,而不會導致品質損失。這在無線世界是一個優(yōu)勢,因移動設備的形狀和尺寸很多。用戶還可以在不影響圖形質量的情況下對圖形進行放大,特別是用手機的小屏幕看圖時比較有用。
Mobile SVG文件通常小于位圖文件,從而可以縮短無線下載時間,這點對于非常計較帶寬的移動應用來說,尤其重要。 另一個例子,如將當前屏幕上的圖形放大時,若是位圖,則會出現(xiàn)使圖像模糊的馬賽克效應,此時若要獲得高質量的放大圖像,則需重新從服務器獲取放大后的圖像,增加了網絡的流量;而SVG圖形是矢量數(shù)據(jù),只需利用原來的數(shù)據(jù),在客戶端進行放大就可以得到沒有質量損失的放大圖形。
Mobile SVG的另一個強大功能是可以存儲圖形中各元素的相關信息。例如,SVG可以識別出圖形中某個帶有一個三角形的正方形是一所房子,并且可以知道房子的樓層數(shù)等信息。SVG還支持事件,從而可以產生超鏈接或者嵌入文字的彈出窗口,以向用戶提供更多的信息或者可點擊的選項。另外,由于SVG是文本格式,可以利用基本的搜索引擎對SVG圖形中的文字進行搜索,這樣可以查詢SVG圖形中具有某種屬性的圖形元素,如上面所說的房子。
Mobile SVG將增強MMS
Mobile SVG最近已被3GPP組織所采納,用于多媒體短信服務(MMS)。采用Mobile SVG,將使許多2.5G和3G MMS服務成為現(xiàn)實。
基于Mobile SVG的MMS與無線系統(tǒng)目前提供的簡單文本和基于位圖的圖形相比,可以使用戶獲得互動性更強和更引人入勝的體驗。另一方面,節(jié)省帶寬可能是Mobile SVG最吸引運營商的特點。Mobile SVG不同于流式音頻和視頻,它可以順利工作于2.5G,甚至2G網絡。內容豐富、互動的Mobile SVG動畫可以在小于12kb的帶寬上傳輸。
Mobile SVG增強了MMS短信,這對于手機制造商具有明顯的吸引力。而且與運營商一樣,OEM廠商也可以在不對設計作重大變動或不顯著增加成本的情況下,增加Mobile SVG功能。由于Mobile SVG是內容如此豐富和通用的平臺,最適合于幫助設備制造商提供差別化服務。
現(xiàn)在已出現(xiàn)相應的工具,可以把現(xiàn)有的內容轉換成Mobile SVG,并根據(jù)手機和網絡條件進行優(yōu)化,因此,內容供應商將能夠降低開發(fā)難度和成本。借助于合適的系統(tǒng)內容,開發(fā)商應該能夠創(chuàng)作或一次性地轉換自己的內容,使幾乎所有的設備都能顯示這些內容,只要這些設備具備相應的功能和SVG播放器。這種情況類似于現(xiàn)在用HTML制作網頁。
對于下一代無線系統(tǒng)(3G)來說,是否能夠成功取決于用戶。而對于無線用戶來說,如果存在充分的理由讓他們更換現(xiàn)有的手機,他們就會更換。經由像Mobile SVG這樣以用戶為中心的技術增強的MMS,將會產生更多促使手機升級的充分的理由。所以,對于業(yè)界來說,其面對的挑戰(zhàn)是實現(xiàn)和應用Mobile SVG。
Mobile SVG適合的其它應用類型和內容
雖然Mobile SVG已開始在MMS上顯露身手,而實際上除了MMS,Mobile SVG還有豐富的應用,包括:
娛樂:互動卡通、賀卡和動畫等。
基于位置的服務:在地圖上顯示運動物體及相關鏈接,同時允許用戶縮放地圖、切換不同圖層的可見性、選擇特定的區(qū)域等;具體應用如汽車導航、汽車調度、電子導游、移動廣告等。
現(xiàn)場服務:包括技術制圖,借助于Mobile SVG,就可以繪制出前后一致的、高品質的圖像,可以看全景,也可以看局部細節(jié)。
Email附件:借助Mobile SVG,可以在支持MMS的移動設備上顯示常見的辦公文檔,如MS Word、MS PowerPoint、Adobe PDF等文檔格式,并且保持文檔內容的格式、圖形、字體信息的完整性。
其它任何JPG、GIF或其它位圖格式不能滿足要求的無線應用場合,如要求提供內容豐富、可伸縮、互動的圖形或動畫的地方。
對于實現(xiàn)Mobile SVG的考慮
Mobile SVG主要用于各種資源非常有限的移動設備,所以在實現(xiàn)Mobile SVG時,性能指標成為最主要的指標。手機的內存很小,CPU的速度也很慢,PDA的內存會稍微大一點,CPU的處理能力會好一點,但兩者的顯示屏分辨率都很小。盡管Mobile SVG針對移動設備進行了特別的設計,使得在移動設備上實現(xiàn)SVG更容易,但要實現(xiàn)一個用戶代理還是要實現(xiàn)XML解析、腳本、DOM、圖像庫、渲染等功能。
一般來說,XML解析比較快,而DOM則會消耗很大的內存。圖像的渲染則更是消耗大量的CPU時間和內存。在這些方面花些功夫,很有可能獲得性能的較大提高。另外,移動設備的浮動運算一般都很慢,所以優(yōu)化算法,盡量減少浮動運算,也是提高性能的一個方面。
另一方面,要顯示的SVG內容決定了渲染的性能。在生成SVG素材的時候應注意哪些方面呢?首先,很顯然,要顯示的圖像元素越多,要渲染的時間越長。當然,對圖形的特效處理,如濾鏡、漸變填充、平滑處理等,都會增加渲染的時間,所以在確實必要的時候才使用這些功能。
總的來說,在實現(xiàn)Mobile SVG的過程中,需要運營商、終端制造商、內容提供商共同努力,才能使Mobile SVG的無限魅力在資源受限的移動設備上大放光彩。
----《通訊世界》