Typomil.com — písmo a typografie

  • Úvod
  • Písmo
  • Sazba
  • Kompozice
  • Typografie na webu
  • Odkazy

Typografie na webu…

Kódování a fonty

Počítačové písmo je pouze souborem digitálních dat. Rodina písma obsahuje spoustu (pro normálního uživatele velice nezajímavých) informací o autorovi, počtu znaků, tvarech liter, případně o obsažených kerningových párech, slitcích apod.

Čeština na rozdíl od např. anglofonních jazyků využívá v hojné míře diakritiky. Vděčíme za ni Janu Husovi (přestože se ještě po několik dalších století vyvíjela), jenž nabodeníčky na počátku 15. století nahradil dřívější spřežky. Diakritická znaménka pak přejaly některé další evropské jazyky, používají však i odlišné diakritizované znaky (lotyšština, rumunština, francouzština apod.). Z jednoduchého důvodu — tedy aby bylo možné korektně zobrazit všechny představitelné znaky různých abeced, vznikla spousta znakových sad. Tou nejjednodušší (latinkovou), která obsahuje pouze 128 znaků, je ta z anglicky mluvících zemí a nazývá se ASCII. Pro nás je stěžejním kódováním středoevropské, někdy též nazývané Latin 2 nebo ISO Latin 2, od ASCII se liší tím, že volné pozice znakové tabulky mají přiřazeny diakritizované znaky. Jenže v Microsoftu si vymysleli kódování vlastní, které se zove windows-1250.

Tak tomu bylo až donedávna, nicméně v současnosti se začíná razantně prosazovat nový standard, kterým je tzv. unicodové kódování. Myšlenka je založena na tom, že jedna znaková sada obsahuje všechny znaky světových abeced bez závislosti na platformě. Zápis znaku může mít až 31 bitů, což postačí k pokrytí všech abeced, matematických a vědeckých symbolů atd. Teoreticky tedy můžeme mít část HTML dokumentu vysázenou česky, část rusky, část například lotyšsky nebo japonsky a dokument se uživateli korektně zobrazí. Je ale nutné, aby příslušný font obsahoval všechny potřebné znaky a tady může nastat kámen úrazu. V zásadě se ale dá říci, že unicode lze na webu použít — pro kombinaci západních, středoevropských jazyků a např. azbuky je toto řešení prakticky ideální. Kupříkladu systémový Arial několik znakových sad obsahuje.

Z hlediska web designu má unicode obrovskou výhodu v tom, že namísto používání znakových entit můžeme speciální symboly zapisovat přímo do HTML dokumentu.

Standard Unicode se začíná nasazovat i v operačních systémech a některých aplikacích, je ale faktem, že některé starší aplikace mají s jeho podporou potíže.

Jak kódování nastavit?

Na webu se v současnosti pro češtinu používá asi nejčastěji kódování středoevropské (iso-8859-2) a windows (windows-1250). Setkávají se s výbornou podporou ze strany prohlížečů na libovolé platformě. Nejpoužívanější variantou unicode je UTF-8.

Nejjednodušším a nejobvyklejším způsobem, jak sdělit prohlížeči zvolené kódování, je vložit do hlavičky HTML dokumentu tzv. meta tag, který jej nastaví.

Středoevropské: <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2"> Windows: <meta http-equiv="Content-Type" content="text/html; charset=windows-1250"> Unicode: <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

Výchozí kódování se dá v moderních prohlížečích změnit i na straně uživatele. Pokud meta tag do hlavičky nevložíme, zkušený surfař se nenechá zaskočit a znakovou sadu si zvolí sám, ale doporučuji na to příliš nespoléhat.

Fonty a naše možnosti

Co se týká fontů a webu, jsme omezeni písmy, jež jsou dostupná na počítači surfaře. A vzhledem k tomu, že existuje spousta platforem a operačních systémů, situace se dále komplikuje. Pokud totiž chceme zvolit písmo blízké našemu výtvarnému citu, můžeme na to rovnou zapomenout. Nejobvyklejšími dostupnými grotesky jsou Arial, Helvetica, Verdana. Nejčastějšími antikvami Times, Georgia. Dalším problémem je, že některé verze OS mají nainstalovány různé varianty fontů podle toho, zda obsahují jen jednu nebo více znakových sad: klasicky Arial CE nebo Arial. Potíž je v tom, že např. v některých verzích Windows může Arial obsahovat i středoevropskou znakovou sadu, azbuku apod. a v jiných ne.

Vycházíme-li však z řetězového výběru v CSS, můžeme problém poměrně hezky vyřešit. Specifikace CSS říká, že ze seznamu se vybere první font, pokud není dostupný, tak druhý atd. Pokud se v OS nenalezne ani jeden, užije se výchozí písmo prohlížeče (standardně Arial, Helvetica nebo Times podle sans-serifové nebo serifové definice na konci výčtu). Je důležité, aby CE (central europan) fonty byly uvedeny jako první před svou non-CE variantou. Pokud by byly v OS obsaženy oba fonty a vybral se první v pořadí (Arial), nemusel by nutně obsahovat české znaky.

Chceme-li tedy zapsat jednoduchou definici bezpatkového fontu, řešení může být následující:

body {font-family: 'Arial CE', 'Helvetica CE', Arial, Helvetica, Verdana, sans-serif;}

Pro patkový font třeba následovně:

body {font-family: Georgia, 'Times New CE', 'Times CE', 'Times New Roman', Times, serif;}

Speciální znaky jako pomlčky, uvozovky, copyright apod. zapisujeme tzv. entitou, vizte jejich základní seznam.


Relevantní odkazy

  • Slovo úvodem
  • Kódování a fonty
  • Přehled fontů
  • Znakové entity
  • Sazba na webu
  • Nadpisy a odstavce


©  crackonosh 2004—2005 | XHTML + CSS | martin@typomil.com | mapa webu