Už je to tak v počítačovém světě zařízeno, že datové struktury lze na pevný disk ukládat několika způsoby, a je jasné, že některé způsoby jsou rozšířenější, jiné méně. Z pohledu uživatele – začátečníka můžeme data rozdělit do tří základních skupin – zvuk, obraz a text. Jak už to tak bývá, některý způsob ukládání dat je veřejně známý, jiný nikoliv, neboť jde o velké komerční firmy a ty jej považují za své „rodinné stříbro“ a tedy něco, co si chrání. My se budeme snažit vysvětlit si, který formát je k čemu dobrý a budeme preferovat ty formáty, jejichž struktura je známá (tedy otevřená). Znovu opakuji, že formátů je velké množství, my se zabýváme těmi nejpoužívanějšími.
Formáty určené k ukládání kancelářských dat
Výrazem „kancelářská data“ mám na mysli formátovaný text (tedy ten, kde je definována velikost a jiné vlastnosti písma), tabulky a prezentace. Na poli kancelářských aplikací vládne firma Microsoft se svým Microsoft Office a většina z nás se již setkala s formátem doc (textový dokument), xls (tabulka) a pps (prezentace). Tyto formáty jsou opravdu hojně využívány a jakýkoliv kancelářský balík, který nedisponuje možností je načíst, je pro masové rozšíření nevhodný – z pohledu některých uživatelů. Podporu není problém naprogramovat, problém je však v tom, že se jedná o formáty uzavřené – jinými slovy Microsoft nikdy nevydal otevřený popis toho, jaká je vnitřní struktura těchto formátů.
Asi si říkáte, že sice na Linuxu neexistuje Microsoft Office, ale přesto s těmito formáty pracujete. Jak je to možné? Podpora těchto formátů vznikla tak, že si šikovný programátor sedl a začal sám zkoumat strukturu souborů a zjišťovat, co se stane, když do dokumentu vloží obrázek, co se stane, když do tabulky přidá vzorec apod. Je to mravenčí práce, ale hlavně nikdy nemůže říct, že má vše správně. Nemůže se mu totiž povést nasimulovat všechny věci, které jdou do souboru uložit. Proto je při práci s těmito formáty v různých produktech mnoho dotazů k tomu, proč ten a ten soubor nejde otevřít v tom a tom programu, když v práci ve Wordu daný dokument funguje.
Jako vhodnou alternativu můžeme nabídnout tzv. OpenDocument formát, což je nyní již schválený standard, jehož struktura je veřejně známa a každý ji může do své aplikace přidat. Pro koncové uživatele to znamená, že pokud začnou používat formát odt (texty), ods (tabulky) a odp (prezentace), mají zaručeno, že i ostatní uživatelé budou moci jejich data otevřít a používat a nebudou nuceni mít stejnou komerční aplikaci, jako ten, kdo dokument vytvořil. Pokud bude daný standard implementován správně, nebude s ním žádný problém spojený s nekompatibilitou.
Jako perličku uvedu to, že poté, co byl formát OpenDocument standardizován, začaly na Microsoft přicházet dotazy, kdy bude tento formát možno používat i v jeho produktech. Nejdříve bylo řečeno, že tento formát není zapotřebí, že má Microsoft svůj vlastní „otevřený“ formát Open XML. Postupem času Microsoft strategii přehodnotil a dnes je na světě zpráva, že pokud si to zákazníci přejí, bude tento formát podporován. Viz http://www.microsoft.com/presspass/press/2006/jul06/07-06OpenSourceProjectPR.mspx
Jak formáty vhodně používat?
Z pohledu textu je nejjednodušším formátem formát textový, označovaný jako txt. Jeho největší slabinou je, že si s sebou nenese žádnou informaci o použitém kódování českých znaků (norma určující, jak počítač interpretuje zápis českých znaků) ani jakékoliv formátovací značky. Může se vám snadno stát, že text, který někdo napsal na počítači s Windows, bude po otevření v Linuxu obsahovat „podivné“ znaky. Výchozí kódová stránka ve Windows je jiná než ta v Linuxu. Náprava je jednoduchá – stačí použít textový editor, který podporuje změnu kódování pro zobrazení, případně ji „uhádne“ sám. Zkuste použít programy KWrite, jEdit, Mousepad aj.
Formát txt je naprosto nevhodný v případě, že chcete do výsledného dokumentu vkládat obrázky, měnit velikost písma apod. Musíte použít něco pokročilejšího. Zde se samozřejmě nabízí formát odt (OpenDocument Text z rodiny OpenDocument formátů), což je v tuto chvíli nativní formát v OpenOffice.org. Pro jeho zobrazení můžete použít samozřejmě OpenOffice.org, KOffice, zásuvný modul do Mozilla Firefoxu nebo AbiWord. Většina zde jmenovaných do něj umí i ukládat. Neměl by také být problém takto vytvořené dokumenty poskytnout i kolegům s Windows.
Smutnou pravdou zůstává, že nejrozšířenější jsou stále formáty Microsoftu a většina kancelářských balíků jej umí v nějakém stupni vytvářet. Pokud opravdu není zbytí, můžete je použít a setkáte se s nimi v naprosté většině ve Windows. V Linuxu s přehledem používejte OpenDocument formát.
Jeho výhodou je to, že je snadno přenositelný mezi platformami a skvěle plní svůj účel, jenže se může stát, že výsledný dokument bude vypadat na každém počítači jinak. Stačí, abyste použili nějaké méně obvyklé písmo, které nemá příjemce ve svém počítači a může nastat problém. Řešením by mohl být formát pdf. Již od základů byl vyvíjen jako přenosný needitovatelný formát, při jehož tvorbě máte jistotu, že tam, kde jej otevřete, bude stále vypadat stejně jako tam, kde jste jej vytvářeli. K jeho zobrazení musíte mít nainstalovaný prohlížeč. Obvykle je to prohlížeč přímo od tvůrce tohoto formátu firmy Adobe (ano, je to komerční closed source program Reader, ale dle mého názoru je nejlepší) nebo v Linuxu např. Xpdf či Kpdf aj.
Pokud některé programy nabízejí „editaci“ pdf souborů, děje se tak většinou formou rozpoznávání znaků v něm obsažených. To s sebou přináší možnost chyby (špatně rozpoznané české znaky např.).
Největší chybou by bylo používat pdf formát k šíření informací, které mají být později upravovány. Vím, že to tak tisíce uživatelů dělají, ale je to špatně, tento formát není určen k takovým „kouskům“. V některých případech prostě pdf formát nemůžete upravit. Dá se toho využít k šíření informací, u nichž chcete zabránit možnosti jejich úpravy a použití jinde. Nejjednodušší je použít jiný formát, v tom vše upravit a až teprve na závěr udělat export do pdf.
Pokud mluvíme o textu, neměli bychom zapomenout na formát souborů rtf (rich text format), což je obdoba odt, jen přišla dříve a mnoho aplikací ji podporuje a před odt to byl prakticky jediný multiplatformní pokročilý textový formát určený k editaci. S jeho implementací jsou v určitých verzích OpenOffice.org problémy.
Chyba rtf implementace v OpenOffice.org se projevuje tím, že s dokumentem se neukládají obrázky. Program vám je sice povolí uložit, po otevření jinde však obrázky neuvidíte.
Jistým druhem formátu je i soubor HTML. Jedná se specifický formát, který umožňuje v textu používat tzv. odkazy a byl vyvinut speciálně pro potřeby internetových prezentací. Ve formátu html najdete především dokumentaci. Mnoho kancelářských balíků podporuje ukládání dat do html souborů, k přečtení stačí internetový prohlížeč.
Dalším formátem jsou tabulky. Můžete využít „textový“ formát, který se nazývá csv (comma separated values). Každý takto vzniklý soubor obsahuje řádky s hodnotami, které jsou od sebe odděleny čárkou nebo středníkem, případně znakem Tab. Tento formát je naprosto univerzální a v podstatě každý tabulkový kalkulátor, který jsem kdy používal, jej umí importovat i exportovat. Protože se jedná o formát textový, dejte si opět pozor na české kódování (hlavně při přechodu mezi platformami).
Pozor u csv souborů na to, pokud v tabulkách používáte číselné hodnoty s desetinnými čísly. V Česku totiž běžně využíváme pro oddělování desetinných míst znak čárka, zatímco v jiných částech světa se ke stejným účelům používá desetinná tečka. Může to způsobovat problémy.
Na tabulky je opět vhodné používat OpenDocument formát nazvaný ods. Jeho rozšíření v programech je obdobné jako u odt, navíc bych zmínil program Gnumeric. A i zde platí, xls (tabulkový formát MS Office) je hodně rozšířený, takže se s ním určitě setkáte.
Na poli programů pro vytváření prezentací jednoznačně kraluje Microsoft Power Point, na paty mu šlapou Impress z OpenOffice.org a KPresenter z KOffice. Komerční program používá formát ppt, jeho OpenDocument varianta se nazývá odp. Navíc se můžete setkat také s formátem pps, což je speciální verze ppt, která se po načtení do Microsoft Power Pointu ihned zobrazí ve formě celoobrazovkové prezentace.
Jak na výměnu obrázků
Hned na úvod si musíme vymezit dvě základní skupiny grafických dat – vektorová a bitmapová. Troufám si tvrdit, že ve většině případů se běžný uživatel setkává s grafikou bitmapovou. Jsou to totiž obvykle fotografie. Méně často pracujeme s vektorovými daty, což jsou většinou technické výkresy nebo třeba mapy.
Formáty určené k ukládání bitmap
Výrazem bitmapový soubor označujeme strukturu, která do mřížky určité velikosti zaznamená nějaký obraz. Obrázek rozloží na jednotlivé body, u kterých si zapíše jejich barvu a intenzitu. Čím bude mřížka podrobnější (obsahuje více sloupců a řádků), tím lépe se nám podaří skutečnost zachytit. Ihned to s sebou nese i fakt, že čím je mřížka obsažnější, tím více dat o obrázku musíme uložit.
A byli to matematici, kteří přispěchali na pomoc v boji s místem a vymysleli algoritmy, které dokáží zachytit danou scénu věrně a přitom z ní vypustit pro oko nepodstatné informace nebo pracovat s informací úplnou a pomocí kompresních algoritmů objem dat zmenšit. Profesionálové samozřejmě pracují s formáty, které žádné informace nevypouštějí a nepracují ani s komprimací. Ale zůstaňme u začátečníků.
Nejčastěji přijdete do styku s obrázky formátu jpg. Prakticky všechny digitální fotoaparáty dnes tento formát podporují. Jedná se o jednu z nejpoužívanějších metod ukládání obrázků, i když je toto ukládání ztrátové a některé informace jsou z obrázku vypouštěny. Nemyslete si, že by to však fungovalo tak, že na obrázku vás a vaší partnerky by se algoritmus rozhodl uložit jen obraz vaší přítelkyně.
Pokud máte nějaký MP3 přehrávač, který umožňuje prohlížet obrázky na svém displeji, patrně bude umět formát jpg, tif nebo bmp.
Podstatným parametrem fotografií v jpg je komprese, neboť čím je větší, tím více informací se z obrázku ztrácí. Obvykle se pracuje s hodnotou od 75 do 90. Při ukládání to můžete ovlivnit. Formát jpg je na rodinné fotoalbum jako dělaný, grafik, který by na jejich základě vytvářel podklady pro profesionální tisk, by z vás však radost neměl. S tímto formátem však nebudete mít žádný problém ani na rozdílných platformách.
Dalším hodně používaným formátem je formát png, což je bezeztrátová komprese aplikovaná v rámci souborového formátu. Dnes je tento formát hojně využíván, jeho popis je veřejně dostupný. Výhodou oproti jpg formátu je skutečnost, že podporuje tzv. průhlednost, tj. že jedna barva je v obrázku nastavena jako průhledná, což se využívá hlavně při tvorbě internetových stránek. Z pohledu začátečníka dává jpg lepší výsledek, protože soubory s fotografiemi jsou v jpg formátu menší než v png. S kvalitou to však bývá horší.
Průhlednost ve formátu png trpí na platformě Windows a internetovém prohlížeči Internet Explorer jedním neduhem. Některé průhledné png soubory nejsou tímto prohlížečem správně zobrazovány a průhlednost v něm nefunguje. Proto není na této platformě tolik používaný. V Linuxu se s ním potkáte na každém rohu.
Pro profesionální tisk se používá formát tif, který je nekomprimovaný a bezztrátový a výsledné soubory pak mají velkou velikost. Obecně je to však standard pro grafická studia a neměli by vás s ním vyhodit, pokud jej přinesete jako podklad pro tisk např. letáků.
Další bitmapový formát, který zmíním, je formát gif. I když se jedná o jeden z nejdéle používaných a nemodernizovaných formátů, má stále své zastánce. Nabízí však jednu podstatnou výhodu oproti konkurenci – animace. Umožňuje tak do sebe uložit jednotlivé snímky animace a v součinnosti s prohlížečem je postupně zobrazit. Další parametry jsou již poněkud „zastaralé“. Asi největší bariérou je to, že podporuje pouze barevné palety s 256 barvami, což není mnoho. Také si nese znamení hříchu, neboť ještě před nedávnem byl tento formát na indexu, protože obsahoval patentovaný kompresní algoritmus, který vyžadoval platbu licenčních poplatků, což znemožňovalo jeho využití ve svobodném softwaru. Dnes už patenty vypršely, v Linuxu si tento formát razí cestu pomaleji.
Existuje i jeden formát, který má spoustu zajímavých vlastností, ale není tak rozšířen v prohlížečích. Jmenuje se xcf a je to nativní formát již zmiňovaného GIMPu. Podporuje průhlednost, bezztrátovou kompresi a navíc vrstvy. Je to vlastně velmi podobný formát jako uzavřený a komerční formát psd, který vytváří produkty firmy Adobe (Photoshop, InDesign atd.)
Formáty určené k ukládání vektorů
Opravdu univerzální a multiplatformní je formát označovaný jako svg. Troufám si tvrdit, že hlavní aplikací, pro kterou je tento formát nativní, je Inkscape. Vektorová grafika má oproti bitmapové několik výhod a nevýhod. Mezi nevýhody můžeme zařadit fakt, že uložit digitální fotografii do vektorového formátu je velmi obtížné a daná fotografie musí projít procesem, kdy jsou na obrázku rozpoznány jednotlivé tvary a převedeny na jejich popis. Zjednodušeně můžeme říci, že vektorová grafiky je plná základních geometrických obrazců, jako jsou elipsy, trojúhelníky a obdélníky s výplněmi nebo bez. Formát svg je dnes jeden z nejpoužívanějších.
Formát svg se skvěle hodí pro použití v internetových prezentacích a internetový prohlížeč Firefox jej podporuje nativně, tj. nemusíte mít v systému nainstalovaný žádný specializovaný nástroj. Jeho masivní používání se teprve rozjíždí.
Vektorovým formátem je i odg, což je OpenDocument formát vytvářený modulem Draw z balíku Openoffice.org. Tento formát bych pro začátečníky doporučoval nejvíce. S OpenOffice.org souvisí jedna drobná nepříjemnost – nepodporuje formát svg přímo. Existuje zásuvný modul, který podporu pro svg zvládá, je však zatím ve vývoji a zdaleka není perfektní.
Často se setkáte i s formátem ps, což je specializovaný profesionální vektorový formát. Podporuje jej málo aplikací, stěžejní aplikací pro Linux je GhostScript. Obvykle je však práce s tímto formátem hodně složitá a většinu začátečníků to odradí, protože už jen nastavení Linuxu tak, aby ps korektně zobrazoval, je zdlouhavé. Pokud zůstaneme u profesionálních vektorových formátů, zmíním ai (Adobe Illustrator) a cdr (CorelDraw). Jedná se o uzavřené formáty a v Linuxu nejsou dobře podporovány.
PostScript je specializovaný formát používaný dnes při profesionální sazbě. Jedná se o stránkový popisný jazyk a jsou jím vybaveny i profesionální tiskárny. Tento formát byl později částečně nahrazen formátem pdf. Jeho autorem je firma Adobe, která jej vyvinula v roce 1985.
Jen okrajově se zmíním o vektorových formátech používaných systémy pro návrhy technických výkresů (anglicky označovány jako CAD). Tam je využíván formát dxf nebo dwg. Staly se v podstatě standardem a pracuje s nimi řada programů, mimo jiné je najdete i v Inkscape nebo v různých CAD programech pro Linux, jako je např. qCAD nebo FreeCAD.
Jak formáty vhodně používat?
Za stěžejní aplikaci pro používání bitmapové grafiky považuji grafický editor GIMP. Ten podporuje všechny zmiňované formáty a umožňuje jejich vzájemnou konverzi. I většina kancelářských balíků je podporuje a není problém v těchto formátech grafiku importovat. Samozřejmě, že i prohlížeče obrázků dodávané s linuxovou distribucí s nimi pracují. Aplikací pro práci s nimi je opravdu dost, ať už jen na prohlížení či k úpravám a nemá smysl je vyjmenovávat – prostudujte dostupné balíčky své linuxové distribuce.