SVG: Grafika pro byznys

Začátkem letošního roku byla konsorciem W3C představena novější verze formátu Scalable Vector Graphics (SVG), konkré...


Začátkem letošního roku byla konsorciem W3C představena novější verze formátu
Scalable Vector Graphics (SVG), konkrétně verze 1.1. Tento standard představuje
zajímavou alternativu k technologii Flash společnosti Macromedia, neboť jakožto
aplikace XML využívá výhod "spřízněných" standardů, mezi něž patří např. XSLT
nebo Document Object Model.
V případě specifikace Scalable Vector Graphics se jedná o XML formát, který byl
organizací W3C zaveden pro zajištění možnosti ztvárnění a znázornění vektorově
orientované dvourozměrné grafiky. Vektorová grafika na rozdíl od rastrové není
popsána barevnými hodnotami všech obrazových bodů, nýbrž pomocí linek,
polygonů, křivek a textu v podobě funkcí. Díky tomu je možné obrázky libovolně
bezeztrátově zvětšovat nebo vytvářet animace. Nejrozšířenějším formátem/
technologií vektorové grafiky v prostředí internetu je v současnosti Flash
firmy Macromedia. SVG přitom představuje otevřený standard, který nabízí
podobné, v některých směrech dokonce ještě širší funkce, a může tedy být
zajímavou alternativou vůči svému konkurentovi.

SVG je XML
Co především odlišuje SVG od Flashe? Ačkoliv jsou SVG a flashová data ve své
podstatě velmi podobná, liší se zejména ve formátu. SVG jakožto aplikace
standardu XML otevírá zcela nové možnosti práce s grafikou, například
standardizované transformace pomocí XSLT (XSL Transformations). Stejně tak,
jako libovolná XML data mohou být prostřednictvím jednoduchých XSL transformací
převedena na SVG grafiku, může být i naopak samotná SVG grafika dále zpracována
aplikacemi schopnými zpracovávat XML data. Podobně jako veškerá další XML data
nabízí i SVG oproti binárním formátům tu výhodu, že každou informaci je možné
prohlížet i provádět její změny pomocí libovolného textového editoru.
S pomocí skriptů na serverové nebo klientské straně využívajících jazyka
JavaScript může být velmi jednoduše realizována interaktivní grafika. Velkou
výhodu přitom představuje zejména skutečnost, že s JavaScriptem je možné k
veškerým elementům SVG grafiky přistupovat přes standardizované programové
rozhraní DOM (Document Object Model). To ocení zejména mnozí z webových
vývojářů. Pro optimální využití síťových zdrojů mohou být SVG data
distribuována v komprimované podobě, přičemž dekompresi automaticky provádí
webový prohlížeč.
Dynamika pro byznys
Uvedené výhody ukazují, že nasazení SVG není smysluplné pouze na poli
atraktivního webového designu, který byl dosavadní hlavní oblastí uplatnění
flashové grafiky, ale především také pro aplikačně orientované nasazení v
podnikových řešeních. Základní data jsou v moderních e-businessových aplikacích
k dispozici často už přímo v XML formátu nebo mohou být na XML data velmi
jednoduše překonvertována. S pomocí SVG je pak možné taková data přímo
vizualizovat bez toho, aby bylo nutné provádět náročné konverze a definovat
potřebná rozhraní. Výhodu zde přitom představuje také matematicky korektní
zobrazení hodnot v diagramech, které alternativní techniky často nabídnout
nemohou. Jako užitečné se v podnikovém prostředí ukazují i možnosti změn
velikosti (zoomu) a navigace.
Takto se SVG hodí jako interaktivní vektorově orientovaný grafický formát
kupříkladu k vizualizaci komplexních obchodních procesů, kde může jediné SVG
řešení nabídnout jak celkový pohled na proces, tak také detailní náhledy jeho
částí.
Vše může názorně objasnit příklad vizualizace konceptu Balanced Scorecard pro
podporu rozhodování a strategického řízení v podniku. V rozhraní softwarového
produktu firmy Siteforce založeném na webovém rozhraní jsou k dispozici veškerá
relevantní podniková čísla v podobě XML dat. Jako formát zde slouží DTD
(Document Type Defenition), navržený společností Balanced Scorecard
Collaborative. Pomocí XSL transformace jsou pak XML data dynamicky převedena na
SVG grafiku a diagramy. XSLT skripty navíc vedle JavaScriptu na straně klienta
umožňují v SVG datech zajištění interaktivity.
SVG nabízí v jedné takové aplikaci možnost vizualizovat stovky parametrů,
hodnot či výsledků v jediném grafickém rozhraní, aniž by koncový uživatel
ztratil přehled. Pomocí myši může být nastaven každý bod křivky grafu tak, aby
podle kontextu obsahoval v malém textovém poli příslušné číselné hodnoty. Jak
zvětšené náhledy, tak celkový pohled mohou být vytištěny ve vyšší kvalitě.
Takovou aplikaci lze provozovat například ve spojení s open source softwarem,
jako je Apache Tomcat, a může být řízena z browseru s odpovídajícím plug-inem
na klientské straně.

SVG pro uživatele
SVG ale může být použito nejen pro zobrazování informací, které jsou k
dispozici na serveru, ale naopak i pro sběr dat a jejich přenos na server.
Prostřednictvím JavaScriptu zabudovaného do SVG grafiky lze jednoduchým
způsobem navrhnout komfortní uživatelské rozhraní, které by s běžnými webovými
technologiemi nebylo snadné realizovat.
Příkladem může být správa bezpečnostních pravidel ve firmě prostřednictvím SVG
rozhraní (viz obr.). Samotná konfigurace může být u komplexní bezpečnostní
architektury provedena pomocí jednoduchého způsobu drag-and-drop.
Prostřednictvím integrace příslušného záznamu do SVG dat je možné tyto
informace měnit a ihned nově uspořádat grafiku klienta. Modifikovaná
bezpečnostní konfigurace je pak přenesena na server.

Co je nového s SVG 1.1?
Verze 1.1 standardu Scalable Vector Graphics nepřináší ve srovnání se svým
předchůdcem 1.0 v podstatě žádné nové funkce. Hlavní krok vpřed u aktuální
verze totiž spočívá především v její modulární struktuře. Po vzoru XHTML
rozdělila pracovní skupina okolo SVG jeho DTD (Document Type Definition) na
více komponent. Taková modulární koncepce tak nabízí možnost kombinovat na bázi
tzv. profilu vybrané komponenty z množství součástí celého standardu. Právě
tento postup použila organizace W3C také proto, aby mohla definovat SVG
varianty pro různé typy mobilních zařízení. V současnosti jsou k dispozici dva
takové profily pro mobilní přístroje (Mobile SVG Profiles), a to SVG Basic a
SVG Tiny. První z nich je určen pro použití v oblasti PDA, zatímco druhý najde
uplatnění u mobilních telefonů, které jsou co do grafických možností ještě
omezenější.

Srovnání vlastností SVG a Flash
SVG Flash

Textově založený XML formát Binární formát
Otevřený standard W3C Proprietární technologie
Indexovatelný pro fulltextové hledání Není indexovatelný
Navržen jako grafický výměnný formát Navržen jako formát pro animaci
Dynamická tvorba SVG dat pomocí Náročnější tvorba dynamické flashové
obvyklých CGI skriptů, JSP, ASP, grafiky (dosud byl nezbytný komerční
PHP, servletů atd. flashový generátor,nyní Macromedia
nabízí Flash MX, který umí zpracovávat i XML data)
Krátká doba zaškolení pro webové Delší doba zaškolení (Flash používá
vývojáře (lze využít existující XML specifické vývojové prostředí)
a textové editory i grafické programy)
Větší plug-in, zatím ne příliš rozšířený Široce rozšířený plug-in (menší objem
při stažení)
Multimediální elementy jsou dostupné Multimediální elementy jsou přímo
prostřednictvím provázání se SMIL integrovány ve Flashi
(Synchronized Multimedia Integration Language).
Zpracování těchto elementů (zvuku, videa, streamingu atd.)
je přenecháno jiným plug-inům
Tisk s vysokým rozlišením pomocí Standardně žádné možnosti tisku
SVG plug-inu
Skriptování na klientské i serverové Skriptování na straně klienta pomocí
stran pomocí JavaScriptu proprietárního skriptovacího jazyka









Komentáře
K tomuto článku není připojena žádná diskuze, nebo byla zakázána.