SVG (енгл.Scalable Vector Graphics) је XML језик за приказивање дводимензионалне векторске графике, статичне или анимиране. То је отворени стандард чији је творац Конзорцијум за веб, заслужан и за познате стандарде као HTML и XHTML.
Преглед
Веб-стандарди
SVG се развија од 1999. од групе компанија укључених у удружење W3C, послије прегледа стандарда предложених од компанија Adobe Systems (PGML) и Microsoft (VML) развијеног од RTF – предатих у W3C 1998. За формулацију SVG су коришћена искуства оба формата.
Графички објекти могу бити постављени у групе и трансформирани у претходно рендероване објекте. Нису директно подржани Z-индикатори (z-indices)[1], који раздвајају поредак цртања од поретка докумената за преклапајуће објекте. Текст може да буде у било којем XML именском простору (namespace) што олакшава претрагу.
Од 2001. спецификација је на верзији 1.1, а на верзији 1.2 се ради.
SVG Mobile препорука је укључила два једноставнија профила SVG 1.1, SVG Basic and SVG Tiny, намењене за уређаје са смањеним могућностима.
SVG Tiny је касније постао посебна препорука са тренутном верзијом 1.2 и база за предложени SVG 1.2.
Постоји и SVG Print, спецификација на којој се још ради и која садржи упуте за штампање за SVG 1.2 и SVG Tiny 1.2 документе.
Платно (канвас) елемент у HTML5 даје помало другачији приступ приказа динамичке графике у HTML. Нажалост, он не дозвољава статичко рендеровање и нацртани елементи нису идентификовани као код DOM.
Штампање
Иако је примарно створен као графички језик, спецификација има и основне способности као језик за опис страница (PDL) као и ПДФ формат. Има могућности коришћења сложене графике, а компатибилан је и са CSS.
Анимација и скриптовање
SVG цртежи могу бити динамички и интерактивни. Модификације у времену се могу описати у SMIL, или програмиране у неком језику као што је JavaScript. W3C експлицитно препоручује SMIL као стандард за анимацију у SVG.[2] Било којем графичком SVG објекту се може придружити програмски код, који се извршава рецимо при клику или прелазом показивача рачунарског миша преко објекта.
Компресија
Пошто текстуалне датотеке обично садрже доста делова текста који се понављају, посебно су подесне за компресију програмима као што су zip, gzip и arj.
Примјери
SVG је XML језик, те је SVG датотека обична текстуална датотека, која се може уређивати у било којем уређивачу текста.
Прво су дате димензије читаве слике. Затим су дате координате горњег левог угла квадрата. Затим следи ширина, висина, радијус заобљености угла квадрата, боја квадрата, боја ивица и ширина ивица квадрата.
Код за приказивање фигуре која се састоји од закривљених секција:
<svgwidth="500"height="500"xmlns="http://www.w3.org/2000/svg"><pathid="Inv_V_MCcZ"style="fill:#00DD00;stroke:none;"d=" M 25 360 C 60 360 80 275 75 260 c -5 15 15 100 50 100 Z "/></svg>