Obsah Anotace Předmluva Úvod Kapitola 1 Kapitola 2 Kapitola 3 Kapitola 4 Závěr Literatura Přílohy

Kapitola 1

Grafické formáty

Grafické formáty jsou standardy, které popisují, jak se mají ukládat grafická data a slouží k jejich přenosu, organizování a k prohlížení. Takových formátů je velké množství. Prakticky každá firma, která vyvíjí nějaký software pro práci s grafikou, používá svůj interní firemní formát. Nás budou zajímat především ty, které se staly standardy, a které mají vztah k problematice webové kartografie.

V zásadě se dají grafické formáty rozdělit na:

V každé z těchto skupin jsou grafické informace uloženy jiným způsobem.

1.1 Vektorové formáty

Vektorová data jsou uložena ve formě matematických objektů. Jsou definovány základní objekty — body, přímky, polygony a nejrůznější druhy křivek. Vektorové formáty umí oproti rastrovým ukládat také textové řetězce. Kromě rovinných objektů mohou vektorová data popisovat i objekty prostorové — bod v prostoru, rovinu, prostorovou křivku. Vektorová data obsahují specifikaci objektů (o který objekt se jedná) a jeho atributy (barva, tloušťka čáry, rozměry)

Klady:

Zápory:

1.1.1 SVG (Scalable Vector Graphics)

Popis formátu

SVG je vektorový grafický formát založený na XML a je často označován za technologii pro 21. století. Je vyvíjen pod záštitou konsorcia W3C a spolupracují na něm firmy jako IBM, Microsoft, Apple, Xerox, Hewlett-Packard, Netscape, Corel, Adobe, Macromedia, ad.

Díky této podpoře má SVG před sebou slibnou budoucnost. Formát SVG lze i komprimovat (a často se tak děje) pomocí algoritmu Gzip. Vznikají tak soubory ve formátu SVGZ, které mají menší datový objem. Další práce s SVG jako s čitelným formátem je však možná až po dekomprimaci.

Vlastnosti

Podpora webových prohlížečů

Interní podporu formátu SVG má zatím Opera a Mozzila (pozor ne FireFox). MS Internet Explorer již tradičně pokulhává. Uživatelé tohoto prohlížeče mají zatím k dispozici plug-in Adobe SVG Viewer.

SVG editory

Editory se dají rozdělit do dvou skupin:
  1. SVG používají jako svůj nativní formát

    Amaya [99] je open-source editor a je vyvíjen samotným konsorciem W3C. Je vhodný pro vývojáře a experimentátory. K dispozici je pro uživatele Windows i Unixu. Tento editor funguje zároveň i jako webový prohlížeč. Amaya umožňuje přímo editovat zdrojový kód. Pro testování jsem používal verzi Amaya 9.2.1.

    WebDraw [100] od společnosti Jasc běží zatím jen na platformě Windows. Nabízí kromě množství editačních funkcí také možnost animace.

  2. Editory umožňující export a import do SVG
    Giganti počítačové grafiky, Adobe [81] a Corel [80] vyvíjejí speciální software pro vektorovou grafiku. Konkrétně se jedná o Adobe Illustrator a Corel Draw, a oba umožňují export i import SVG grafiky. Z produktů Shareware a Freeware je to Mayura [101] pro Windows a pro platformu Unix jsou to například aplikace Sketch [102] a Gill [103].

    Corel Draw umožňuje jak import tak export svg grafiky. Tento produkt jsem využíval při testování výstupní svg grafiky z konvertoru vtx2svg, viz. příloha. Konkrétně se jednalo o Corel Draw 12.

Základní struktura dokumentu

<?xml version="1.0" standalone="no"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> <svg width="1000px" height="1200px" version="1.1" viewBox="0 0 1000 1000" preserveAspectRatio="none" xmlns="http://www.w3.org/2000/svg"> ... </svg> Jednotlivé atributy elementu svg jsou nastaveny jen pro příklad.

Základní elemty:

Základni element: svg

Může existovat v samostatném souboru nebo jako zde uvnitř XML dokumentu. Další elementy se píší mezi značky <svg> podle zásad XML.
Atributy:

Element rect

rect.jpg, 8 kB
<rect x="400" y="100" width="400" height="200" fill="yellow" stroke="navy" stroke-width="10" /> Definuje rovnoběžný obdélník s atributy: x, y, width, height se zřejmým významem (x, y je levý horní roh)
Atribut strokedefinuje barvu obrysu, stroke-width šířku obrysu a fill barvu výplně.

Element circle

circle.jpg, 20 kB
<circle cx="600" cy="200" r="100" fill="red" stroke="blue" stroke-width="10" /> Vykreslí kruh se středem cx a cy a poloměrem r. Znovu můžeme nastavovat šířku obrysu, barvu obrysu a barvu výplně.

Element ellipse

ellipse.jpg, 18 kB
<ellipse transform="translate(300 200) rotate(-30)" rx="250" ry="100" fill="none" stroke="blue" stroke-width="20"/> Vykreslí elipsu se středem cx a cy a dvěma poloměry rx a ry. Uvádím zde ještě způsob transformace prvku, která se dá použít pro libovolný element. Translate udává posun ve směru x a y a rotate úhel rotace ve stupních.

Element line

line.jpg, 8 kB
<line x1="100" y1="100" x2="500" y2="90"\\ stroke-width="5"/> Jednoduchou čáru definují 2 páry souřadnic.

Element polyline

polyline.jpg, 8 kB
<polyline fill="none" stroke="blue" stroke-width="10" points="50,375 150,375 150,325 250,325 250,375 350,375 350,250 450,250 450,375 550,375 550,175 650,175 650,375 750,375 750,100 850,100 850,375 950,375 950,25 1050,25 1050,375 1150,375" /> Počáteční bod, lomové body a poslední bod lomenné čáry se zapisují do atributu points. Střídavě jsou zapisovány souřadnice x a y.

Element polygon

polygon.jpg, 17 kB
<polygon fill="red" stroke="blue" stroke-width="10" points="350,75 379,161 469,161 397,215 423,301 350,250 277,301 303,215 231,161 321,161" /> Uzavřený mnohoúhelník definován lomovými body stejně jako polyline.

Element text

text.jpg, 13 kB
<text x="250" y="150" font-family="Helvetica" font-size="55" font- style="italic" fill="blue" > pokus </text> Atrubity jsou zcela zřejmé. Poloha textu je vztažena k účaří prvního znaku.

1.1.2 VML (Vektor Markup Language)

Popis formátu

VML je starší formát než SVG, ale slouží ke stejnému účelu — k popisu vektorové grafiky. Firma Microsoft nechtěla čekat na standardizaci SVG a vyvinula vlastní formát.

Vlastnosti

Vlastnosti jsou v podstatě rovnocenné s formátem SVG, ale VML se dnes již nepoužívá.

Podpora webových prohlížečů

VML je výhradní formát firmy Microsoft. Podporu má jen v prohlížeči Internet Explorer 5 a vyšší verze. To znamená, že v jiných webových prohlížečích (Mozzila, Opera …) se žádná grafika nezobrazí. To je také jeden z důvodů, proč je tento jazyk v podstatě již mrtvý.

Podpora VML v jiných aplikacích

VML podporují především produkty firmy Microsoft (MS Office), ale můžeme se s jeho podporou setkat také například u softwaru AutoCAD Map 2004.

Základní struktura dokumentu

<html> <head> < xml:namespace ns="urn:schemas-microsoft-com:vml" prefix="v"/> <style type="text/css"> v\:* { behavior: url(#default#VML);} </style> </head> <body> <?xml:namespace prefix = v /> ... </body> </html> Jednotlivé elementy se píší před značku </body>

Element line

<v:line from="20pt,20pt" to="100pt,100pt" strokecolor="red" strokeweight="2pt"/> </v:line>

Element polyline

<v:polyline points="20,0,54,-3,180,6pt,261,-7" strokecolor="red" strokeweight="2pt"/> </v:polyline>

Element roundrect

<v:roundrect id=nr2 style="LEFT: 190px; WIDTH: 48px; POSITION: absolute; TOP: 119px; HEIGHT: 64px" arcsize = "4321f" coordsize = "21600,21600" fillcolor = "#051dff" strokecolor = "black" strokeweight = "1.5pt"> </v:roundrect> Jednotlivé atributy elemntů udávám již bez vysvětlení. Mezi další elementy patří: rect (obdélník), curve (kubická Besierova křivka) nebo shape (tvar)

1.1.3 SHP (ShapeFile)

Popis formátu

SHP je vektorový formát firmy ESRI (Environmental Systems Research Institute) [66], který byl poprvé představen v programu ArcView 2 začátkem devadesátých let. SHP popisuje vektorovou grafiku. Objekty (bod, linie, plocha) jsou uloženy ve formě vektorových souřadnic klíčových bodů.

{Shapefile sestává ze hlavního souboru (.shp), indexového souboru (.shx) a databázové tabulky (.dbf) (dBASE table). Hlavní soubor je záznamový soubor. Každému záznamu se připisuje typ objektu se seznamem klíčových (lomových) bodů. V indexovém souboru se přiřazuje počátek záznamů v hlavním souboru, protože délka záznamů je různá v důsledku rozdílného počtu klíčových bodů. Databázová tabulka obsahuje atributy objektů ve stejném pořadí, jak jsou zaznamenány v hlavním souboru.

Tato struktura je velice jednoduchá a specifikace shapefile je lehce dostupná. To přispělo k oblíbenosti tohoto formátu.

Vlastnosti

Podpora formátu v aplikacích

Samozřejmá je podpora v aplikacích firmy ESRI. Dále formát SHP podporuje OCAD (export, import) — aplikace pro tvorbu map, program TOPOL, Autodesk MapGuide. Zeměměřický úřad poskytuje data ZABAGED ve formátu ShapeFile.

1.1.4 WebCGM (Computer Graphics Metafile)

Popis formátu

CGM je formát pro vektorovou a pro složenou vektorovou a rastrovou grafiku. Byl definován v roce 1987 a je určen zejména pro technické výkresy. Cílem formátu WebCGM je jeho snadná publikace na webu (bez nutnosti konverze). Specifikace formátu WebCGM byla zveřejněna v roce 1999 a její revize byla provedena v roce 2001.

Vlastnosti

Využívá ho např. server GeoMedia WebMap (Intergraph)

1.1.5 SWF (Flash)

Popis formátu

SWF je grafický formát, který je určen zejména pro vektorovou grafiku na webu. Je zaměřen především na animace. Umí však pracovat i s grafikou bitmapovou. Počátky Flashe spadají do období kolem roku 1994. Nejednalo se však o flash, jak ho známe dnes, ale o jeho předchůdce SmartSketch, který byl založen na programovacím jazyce JAVA. Ta však nevyhovovala nárokům na rychlost a spolehlivost, a proto se od ní odstoupilo. V roce 1995 se objevují první zásuvné plug-iny pro webové prohlížeče a SmartSketch byl přejmenován na FutureSplash Animator.

V roce 1996 kupuje software FutureSplash Animator firma Macromedia a vzniká produkt Macromedia Flash 1.0.

Vlastnosti

Podpora formátu v aplikacích

Plug-in pro podporu flash je implementován v IE od verze 5 a Netscape od verze 4.7. Pro přehrávání SWF slouží volně dostupný Flash Player. K tvorbě flashových animací se užívá programové prostředí Macromedia Flash. Nyní je tento program součást produktu Studio 8 od Macromedia. V oblasti interaktivních map bude určitě Flash vytlačován novým otevřeným formátem SVG.

1.1.6 GML (Geography Markup Language)

Popis formátu

GML je jazyk pro modelování, přenos a uchování geografických informací založený na jazyku XML. Byl vyvinut konsorciem OpenGIS. Dnes se používá zejména v kombinaci s SVG (dříve i s VML) . GML obsahuje geografická data a SVG popisuje, jak se budou data zobrazovat.

Vlastnosti

1.2 Bitmapové formáty

Bitmapa je dvourozměrné pole obrazových elementů — pixelů. Každý pixel je definovaný svou polohou a jeho atributem je barva. Dalším atributem může být průhlednost — transparence (alfa), která se uplatní při skládání více bitmap přes sebe. Složením těchto pixelů vzniká obraz.

Existují dva způsoby, jak vyjádřit barvu pixelu: S atributy souvisí pojem bitová hloubka. Je to počet bitů k vyjádření všech atributů jednoho pixelu. Bitová hloubka násobená počtem pixelů nám udává velikost nezkompresovaného souboru.
Bitová hloubka 1 — monochromatický obraz
Bitová hloubka 8 — obraz v šedé škále (např. u formátu GIF to ale může být odkaz na paletu)
Bitová hloubka 24 — barevný obraz
Bitová hloubka > 24 — barevný obraz + další atributy
Klady: Zápory: