Hladká sazba
Osnova kapitoly
- Mezery a další speciální znaky
- Vkládací příkazy
- Symboly a znaky cizích jazyků
- Specifika vícejazyčné sazby
- Úkoly k řešení
Hladká sazba je sazba odstavců na určenou šířku z jednoho typu a stupně písma. Řídí se obecně typografickými pravidly i pravidly českého pravopisu. Důležitá a v praxi velmi potřebná jsou pravidla pro sazbu různých znaků. Východiskem pro nás bude norma ON 88 2503 z let 1974–1994, která se týká základních pravidel sazby. Jak je uvedeno v jejím úvodu, cílem je získat opticky správný vzhled a bezchybné zhotovení sazby. Sazba má tvořit opticky ucelenou plochu a odpovídat estetice. V roce 2014 vstoupila v platnost nová norma ČSN 01 6910.
Některé znaky lze zapsat přímo z klávesnice, některé pomocí klávesové zkratky a některé jsou dostupné výběrem v aplikaci Mapa znaků. Současná verze překladače xelatex umožňuje většinu speciálních znaků vkládat přímo do textu dokumentu bez použití speciálních maker.
Mezery
Systém LATEX rozlišuje několik typů mezer, které liší svými vlastnostmi a použitím:
Název mezery | Velikost | Zápis v TEXu | Zlomitelná | Pružná | Interval pružnosti |
---|---|---|---|---|---|
Mezislovní | 0,33 em | ␣ | ano | ano | 0,25–0,50 em |
Nezlomitelná | 0,33 em | ~ | ne | ano | 0,25–0,50 em |
Zúžená | 0,25 em | \, | ne | ne | – |
Rozšířená | 1,00 em | \quad | ano | ne | – |
Rozšířená | 2,00 em | \qquad | ano | ne | – |
Protože se TEX řídí pravidly americké typografie, má zúžená mezera velikost 0,1667 em. Správného rozměru podle pravidel české typografie (0,25 em) lze dosáhnout úpravou příkazu. Do stylového souboru proto doplníme následující řádek (význam příkazů objasníme ve cvičení později):
\def\,{\penalty10000\hskip0.25em} % zúžená nezlomitelná mezera
Pro automatické doplnění nezlomitelné mezislovní mezery existuje řada nástrojů, například program vlna
, jehož autorem je RNDr. Petr Olšák.
Vestavěný editor systému TEXonWeb také podporuje automatické „vlnkování“. V systému Word lze alespoň zařídit automatické doplnění „pevných“ mezer (nic lepšího Word neumí)
pomocí efektivního nahrazování. Najdeme výraz <([aioukvszAIOUKSVZ])␣
a nahradíme jej výrazem \1^s
. Je nutné mít zapnutou podporu speciální znaků při nahrazování.
Speciální znaky
Spojovník, pomlčka, minus
Mezi nejčastěji se vyskytující znaky patří spojovník, pomlčka a minus:
Název znaku | Podoba | Zápis v TEXu | Poznámka |
---|---|---|---|
Spojovník | - | - | přenositelný |
Pomlčka (krátká) | – | -- | velikost 0,5 em |
Pomlčka (dlouhá) | — | --- | velikost 1,0 em (USA) |
Minus | − | $-$ | matematický operátor |
Dostane-li se spojovník na konec řádku, musí být podle pravidel české typografie opakován na řádku následujícím. Balíček polyglossia
toto nastavení nemá implicitně zapnuto, je ale možné přenášení
spojovníku explicitně nařídit. Řešení tohoto problému bude náplní cvičení později.
Pomlčky se zapisují jako dva (tři) spojovníky a TEX je automaticky nahrazuje za pomlčky – dělá z nich slitky.
Aktivní znaky
Určitý problém nastává při vkládání aktivních znaků. Způsob zápisu těchto znaků ve významu obyčejných znaků je uveden v tabulce:
Znak | Význam v TEXu | Zápis jako běžný znak | Zápis kódem ASCII |
---|---|---|---|
# | číslování parametrů v definicích | \# | \symbol{35} |
$ | matematické prostředí | \$ | \symbol{36} |
% | komentář | \% | \symbol{37} |
& | oddělovač sloupců v tabulce | \& | \symbol{38} |
\ | začátek příkazu | \textbackslash | \symbol{92} |
^ | exponent v matematickém výrazu | \textasciicircum | \symbol{94} |
_ | index v matematickém výrazu | \_ | \symbol{95} |
{ | začátek skupiny | \{ | \symbol{123} |
} | konec skupiny | \} | \symbol{125} |
~ | nezlomitelná mezera | \textasciitilde | \symbol{126} |
Kromě výše uvedených znaků se lze v běžném textu setkat s celou řadou dalších speciálních znaků a symbolů, které lze v systému XELATEX zapsat (většinou) přímo z klávesnice.
Uvozovky
Drobné problémy mohou přinášet české uvozovky, k jejichž zápisu potřebujeme znát jejich pozici v kódu Unicode:
Tvar | Použití | Zápis z klávesnice | V OS Windows |
---|---|---|---|
„ | počáteční | Ctrl + Shift + U + 201E | Alt + 0132 |
“ | koncová | Ctrl + Shift + U + 201C | Alt + 0147 |
Lepším řešením je vytvoření vlastního příkazu \uv{...}
. Do stylového souboru můžeme přidat následující řádek:
\def\uv#
1{„#
1“} % správné české uvozovky
Výpustka
Nahrazuje nevyslovený nebo v citaci vynechaný text, nelze ji zaměnit za běžné tři tečky zapsané z klávesnice, neboť má odlišné mezerování.
Vkládá se příkazem \dots
, před ní se navíc v české typografii používá šestinová mezera. Proto si vytvoříme vlastní příkaz pro správnou mezeru:
\def\:{\penalty10000\hskip0.16667em} % mezera okolo výpustky
Vkládací příkazy
Loga systému, formátů a rozšíření
Pro sazbu loga existují jednoduché příkazy:
Logo systému | Příkaz pro vysázení |
---|---|
TEX | \TeX |
LATEX | \LaTeX |
XETEX | \XeTeX |
XELATEX | \XeLaTeX |
Aktuální datum
Datum se sází příkazem \today
ve tvaru odpovídajícím jazyku zvoleném v parametru příkazu \setdefaultlanguage{...}
v preambuli (viz úvodní cvičení). Pozor si musíme dát na ignorování veškerých mezer za příkazem – srovnejte tyto tvary:
\today prší
\today{} prší
Symboly a znaky cizích jazyků
Systém XELATEX umožňuje zápis všech znaků s diakritikou přímo z klávesnice, jsou-li tyto znaky v daném fontu k dispozici. Uvedené příkazy slouží v dnešní době zejména pro případ, kdy některý znak není pohodlně dostupný z klávesnice:
Znak | Příklad | Zápis v TEXu |
---|---|---|
Čárka (acute) | á | \'{a} |
Těžký akcent (grave) | à | \`{a} |
Stříška, vokáň (circumflex) | â | \^{a} |
Háček (caron) | ǎ | \v{a} |
Přehláska, dierese (umlaut) | ä | \"{a} |
Dlouhá přehláska (double acute) | a̋ | \H{a} |
Kroužek (overring) | å | \r{a} |
Tečka horní (overdot) | ȧ | \.{a} |
Tečka spodní (underdot) | ạ | \d{a} |
Vodorovná čárka (macron) | ā | \={a} |
Oblouček (breve) | ă | \u{a} |
Vlnka (tilda) | ã | \~{a} |
Sedila (cedilla) | a̧ | \c{a} |
Ocásek (ogonek) | ą | \k{a} |
Srovnejte:
gu\v{l}\^{o}\v{c}ka v jam\^{o}\v{c}ke
guľôčka v jamôčke
Kromě výše uvedených znaků se lze v některých jazycích setkat také se specifickými dodatečnými národními znaky, tzv. grafémy:
Znak | Jazyky | Zápis v TEXu |
---|---|---|
ł | polština | \l |
Ł | polština | \L |
ß | němčina | \ss |
ø | severské | \o |
Ø | severské | \O |
å | severské | \aa |
Å | severské | \AA |
œ | francouzština | \oe |
Œ | francouzština | \OE |
æ | severské | \ae |
Æ | severské | \AE |
¿ | španělština | ?` |
¡ | španělština | !` |
Přehled všech možných i nemožných symbolů a jejich zápis v TEXu lze najít například v tomto archivu.
Specifika vícejazyčné sazby
Řešení problému sazby více jazyků v jednom dokumentu spočívá obvykle ve třech krocích:
- nastavení jazyků pro správné dělení slov a sazbu automatických textů,
- připojení fontu s podporou potřebných národních znaků,
- vymezení oblastí pro použití jednotlivých jazyků.
Podrobnější informace včetně seznamu 76 aktuálně podporovaných jazyků lze nalézt v dokumentaci k balíku polyglossia
.
Nastavení jazyků
Všechny potřebné jazyky uvedeme do preambule, například:
\setdefaultlanguage{czech} % výchozím jazykem je čeština
\setotherlanguage{english} % vedlejším jazykem je angličtina
Jsou-li jazyky více než dva, je možné využít následující zápis:
\setdefaultlanguage{czech} % výchozím jazykem je čeština
\setotherlanguages{arabic,russian,vietnamese} % vedlejší jazyky jsou arabština, ruština a vietnamština
Připojení fontu
Většinu jazyků používajících latinku nebo cyrilici lze psát přímo (máme-li ten správný font), vyzkoušejte například:
Egzotik dilleri ile çalışmak eğlenceli. % turečtina
Arbeid med eksotiske språk er gøy. % norština
Töö eksootilised keeled on lõbus. % estonština
Darbas su egzotinių kalbų yra įdomus. % litevština
Работа с екзотични езици е забавно. % bulharština
Робота з екзотичними мовами весело. % ukrajinština
Pokud ale výchozí font nemá potřebné znaky, můžeme pro každý jazyk připojit jiný font, například pro ruštinu:
\newfontfamily\russianfont{Times New Roman} % pro ruštinu se použije písmo Times New Roman
Je zřejmé, že namísto russian
můžeme psát libovolný jazyk z těch, které máme uvedeny v preambuli. V případě arabštiny je navíc
situace zkomplikována odlišným způsobem sazby (zprava doleva). Tuto skutečnost je nutno uvést v okamžiku připojení fontu:
\newfontfamily\arabicfont[Script=Arabic]{Adobe Arabic} % pro arabštinu se použije písmo Adobe Arabic a bude se sázet zprava doleva
Vymezení oblastí
Nakonec musíme v textu vyznačit pasáže, které mají být sázeny vedlejšími jazyky. Pro kratší texty lze využít příkaz:
Tento \textrussian{текст} obsahuje slovo v ruštině.
Pro delší texty je k dispozici prostředí:
\begin{russian} % začátek sazby v ruštině
Этот текст создается в системе \TeX.
\end{russian} % konec sazby v ruštině
Stejně tak v arabštině, jen je třeba mít na paměti nutnost zápisu názvu prostředí Arabic
s velkým počátečním písmenem (důvodem je zřejmě fakt, že arabic
se v TEXu používá v souvislosti
s arabskými číslicemi při práci s čítači – bude objasněno později):
\begin{Arabic} % začátek sazby v arabštině
أبو عبد الله محمد بن موسى الخوارزمي ابو جعفر
\end{Arabic} % konec sazby v arabštině
Vietnamštinu lze sázet také bez komplikací:
\begin{vietnamese} % začátek sazby ve vietnamštině
Văn bản này đã được tạo ra trong hệ thống \TeX.
\end{vietnamese} % konec sazby ve vietnamštině
Dokonce ani čínština není žádný problém. Protože tento jazyk nepoužívá dělení slov, je jednodušší využít pro dočasnou změnu výchozího nastavení pouze příkaz
\fontspec{...}
. Kratší texty tak lze sázet přímo bez nutnosti uvádění tohoto jazyka v preambuli:
\fontspec{Adobe Fangsong Std R}
本文是在\TeX 的系統中創建
Úkoly k řešení
Příprava
Budeme pracovat s následujícím textem, který obsahuje 12 vět s velkým množstvím chyb:
(1) Jak vidím -rychlík Vídeň-Mnichov už odjíždí z nádraží. (2) " Byla to ona ", oznámil bratrovi. (3) Teď ( předpokládáme - li větu 5 ) snadno vypočteme 17,3 mm. (4) Vztahy cíl - obsah - metoda se realizují v součinnosti učitele a žáků. (5) Odvezl již 543 kg brambor , 2.6 q řepy a 12,8 hl mléka . (6) Předchozí důkaz ( autorem je I. Newton ) umožňuje - jak známo - hodnotit vztahy těles. (7) Byl tam určitě zcela sám ! Nebo ne ? (8) Přednášel doc . ing . Jaroslav Karlík, CSc ., ale sál byl poloprázdný. (9) Informace o velikosti 1 b je rovna odpovědi na výrok , tj . "Ano - ne". (10) Typografie a sazba - hlavní nástroje pro zpracování textů na počítači. (11) Výrok "...a přece se točí"! neřekl G. Bruno. (12) Výrobky ( kola , pera , hřídele ) objednávejte u firmy Pěník& Javůrek.
Nyní provedeme s větami tytéž úpravy, ale v textovém procesoru MS Word. Další věty budou obsahovat znaky různých exotických abeced a jazyků:
(13) Významný ruský matematik Пафнутий Львович Чебышёв sestrojil v roce 1876 svůj první mechanický kalkulátor. (14) Technika zvaná rabdologie je pojmenována podle řeckých slov ράβδος (tyč, prut) a λόγος (věda). (15) Na Islandu lze navštívit národní parky Vatnajökull, Snæfellsjökull a Þingvellir. (16) Pojem cifra pochází z arabského výrazu pro nulu صفر. (17) Mezi známá města patří Hà Nội, Thành phố Hồ Chí Minh (též Sài Gòn) a Đà Nãng. (18) První japonský mechanický kalkulátor se jmenoval Jidō soroban (自動そろばん). (19) Typickými specialitami sečuánské kuchyně jsou 宫保雞丁 (gōngbǎo jīdīng) a 水煮肉 (shuǐzhǔ ròu).
Postup
Nejdříve vytvoříme nový stylový soubor, který pojmenujeme mujstyl.sty. Do tohoto souboru budeme po celý semestr postupně zapisovat příkazy pro nastavení globálních parametrů sazby a především zde budeme vytvářet definice vlastních příkazů. Hned na začátku do tohoto souboru přesuneme dva řádky z „hlavního“ souboru. Jedná se o řádky připojující rozšiřující balíčky a nastavující hlavní jazyk sazby:
\usepackage{xltxtra,polyglossia}
\setdefaultlanguage{czech}
Do „hlavního“ souboru naopak přidáme příkaz, kterým stylový soubor připojíme. Také nastavíme základní stupeň písma na 12 pt. Takto bude vypadat základní kostra dokumentu před začátkem práce v každém cvičení:
\documentclass[12pt]{article}
\usepackage{mujstyl}
\begin{document}
...
\end{document}
Takto upravenou strukturu si uložíme jako výchozí obsah editoru, abychom ji měli připravenou v každém novém dokumentu:

Do textu v prvních 12 větách doplníme speciální znaky v souladu s typografickými pravidly a normami. Předpokládáme již upravené definice zúžených mezer a existenci vlastního příkazu pro vkládání uvozovek ve stylovém souboru. Úpravy budeme provádět nejen v systému XELATEX, ale také v textovém procesoru MS Word, abychom mohli porovnat možnosti a uživatelskou přívětivost obou systémů. Poté vysázíme zbývající věty obsahující úryvky v cizích jazycích.
Řešení
Soubor cviceni02.tex bude vypadat následovně:
\documentclass[12pt]{article}
\usepackage{mujstyl}
\begin{document}
(1) Jak vidím~-- rychlík Vídeň--Mnichov už odjíždí z~nádraží.
(2) \uv{Byla to ona,} oznámil bratrovi.
(3) Teď (předpokládáme-li větu 5) snadno vypočteme 17,3\,mm.
(4) Vztahy cíl--obsah--metoda se realizují v~součinnosti učitele a~žáků.
(5) Odvezl již 543\,kg brambor, 2,6\,q řepy a~12,8\,hl mléka.
(6) Předchozí důkaz (autorem je I.\,Newton) umožňuje~-- jak známo~-- hodnotit vztahy těles.
(7) Byl tam určitě zcela sám! Nebo ne?
(8) Přednášel doc.\,Ing.\,Jaroslav Karlík,~CSc., ale sál byl poloprázdný.
(9) Informace o~velikosti 1\,b je rovna odpovědi na výrok, tj.\,\uv{ano--ne}.
(10) Typografie a~sazba~-- hlavní nástroje pro zpracování textů na počítači.
(11) Výrok \uv{\dots\:a~přece se točí!} neřekl G.\,Bruno.
(12) Výrobky (kola, pera, hřídele) objednávejte u~firmy Pěník\,\&\,Javůrek.
\fontspec{Times New Roman} % přepneme na Times New Roman kvůli problémům s exotickými jazyky
(13) Významný ruský matematik \rusky{Пафнутий Львович Чебышёв} sestrojil v~roce 1876 svůj první mechanický kalkulátor.
(14) Technika zvaná rabdologie je pojmenována podle řeckých slov \recky{ράβδος} (tyč, prut) a~\recky{λόγος} (věda).
(15) Na Islandu lze navštívit národní parky \islandsky{Vatnajökull}, \islandsky{Snæfellsjökull} a~\islandsky{Þingvellir}.
(16) Pojem cifra pochází z~arabského výrazu pro nulu \arabsky{صفر}.
(17) Mezi známá města patří \vietnamsky{Hà Nội}, \vietnamsky{Thành phố Hồ Chí Minh} (též \vietnamsky{Sài Gòn}) a~\vietnamsky{Đà Nãng}.
(18) První japonský mechanický kalkulátor se jmenoval Jidō soroban (\japonsky{自動そろばん}).
(19) Typickými specialitami sečuánské kuchyně jsou \cinsky{宫保雞丁} (gōngbǎo jīdīng) a~\cinsky{水煮肉} (shuǐzhǔ ròu).
\end{document}
Do souboru mujstyl.sty doplníme příkaz pro nastavení podpory ligatur a v případě potřeby ponecháme aktivní příkazy pro připojení vlastních fontů a jazyková nastavení. Pokud nepotřebujeme sázet v cizích jazycích, tyto příkazy ponecháme zakomentované. Sazební styl nyní vypadá takto:
% výchozí nastavení
\usepackage{xltxtra,polyglossia} % formát XeLaTeX, připojení jazykového balíčku
\setdefaultlanguage{czech} % výchozí jazyk sazby
% rozšířená jazyková nastavení a potřebné fonty pro sazbu v cizích jazycích
\setotherlanguages{arabic,greek,russian,icelandic,vietnamese} % vedlejší jazyky
\newfontfamily\arabicfont[Script=Arabic]{Adobe Arabic} % font a směr sazby pro arabštinu
\newfontfamily\icelandicfont{Times New Roman} % font pro islandštinu
\newfontfamily\greekfont{Times New Roman} % font pro řečtinu
\newfontfamily\russianfont{Times New Roman} % font pro ruštinu
\newfontfamily\vietnamesefont{Times New Roman} % font pro vietnamštinu
% příkazy pro sazbu v cizích jazycích
\def\arabsky#
1{\textarabic{#
1}} % sazba arabštiny
\def\islandsky#
1{\texticelandic{#
1}} % sazba islandštiny
\def\recky#
1{\textgreek{#
1}} % sazba řečtiny
\def\rusky#
1{\textrussian{#
1}} % sazba ruštiny
\def\vietnamsky#
1{\textvietnamese{#
1}} % sazba vietnamštiny
\def\japonsky#
1{{\fontspec{Adobe Fangsong Std R}#
1}} % sazba japonštiny
\def\cinsky#
1{{\fontspec{Adobe Fangsong Std R}#
1}} % sazba čínštiny
% mezery a speciální znaky
\def\,{\penalty10000\hskip0.25em} % zúžená nezlomitelná mezera
\def\:{\penalty10000\hskip0.16667em} % mezera okolo výpustky
\def\uv#
1{„#
1“} % správné české uvozovky
Domácí úkol
Na procvičení můžete využít následující text (postup stejný):
Doporučené vybavení: El.ladička " Combo " ( zesilovač + repro. ), Metronom- taktoměr, dobré kytarové struny osvědčených značek( Gibson& Fender, a další.).Prozatím ! Pro začátek stačí tloušťka pro el.kytary - 0.08 inch. (tloušťka struny " e " ), max.0.09 inch. Celé vybavení lze pořídit do 10000,-Kč . V diagramech č.1 a č.2 jsou znázorněny prstoklady stupnice " C dur " . Jsou téměř shodné - naučte se oba. V prvním případě je užit tzv. " Podhmat " na struně " g " - ukazovákem. Druhý př. je opačný- je to tzv. " Přehmat " malíčkem. Diagramy 1 - 13 všeobecně jsou vlastně výřezem části hmatníku, kde vodorovné úsečky znázorňují struny a svislé - pražce. Spodní struna ( úsečka ) je nejsilnější - " E " a postupujeme směrem nahoru k " e2 ". Pro leváky se schema otočí o 180 ° .Potom cvičte alespoň 1hod totéž dle not, které jsou uvedeny ( bez označení prstokladu, protože se bude různit dle užitého posuvného prstokladu viz. - 2. kap. ) hned za prstoklady stupnic " dur ". Další cvičení bude užití těchto prstokladů v různých polohách 7-dmi tónových stupnic , například od tónu " As " po půltónech směrem nahoru, kam až vám to hmatník vaší kytary dovolí. Pak zase stejným způsobem sestupujte. Snažte se dosáhnout 100 % bezchybnosti. Zopakujeme si prstoklad levé ruky: 1- ukazovák, 2- prostředník, 3- prsteník, 4- malík. Prstoklady č.1 a č.2 můžete tedy hrát stupnice do dvou oktáv , a to : As, A, Bé, H, C, Des, D, .... dále pak dle typu kytary - Es, E, F, -kolik vám hmatník vaší kytary umožní.
Opět je možné tytéž úpravy provést v textovém procesoru MS Word.
Řešení
\documentclass[12pt]{article}
\usepackage{mujstyl}
\begin{document}
Doporučené vybavení: el.\,ladička \uv{combo} (zesilovač + reproduktory),
metronom~-- taktoměr, dobré kytarové struny osvědčených značek
(Gibson\,\&\,Fender a~další). Prozatím! Pro začátek stačí tloušťka pro
el.\,kytary~-- 0,08~inch (tloušťka struny \uv{e}), max.\,0,09~inch.
Celé vybavení lze pořídit do 10\,000~Kč.
V~diagramech 1 a~2 jsou znázorněny prstoklady stupnice \uv{C~dur}.
Jsou téměř shodné~-- naučte se oba. V prvním případě je užit
tzv.\,\uv{podhmat} na struně \uv{g}~-- ukazovákem. Druhý příklad je
opačný~-- je to tzv.\,\uv{přehmat} malíčkem. Diagramy 1--13 všeobecně
jsou vlastně výřezem části hmatníku, kde vodorovné úsečky znázorňují
struny a~svislé pražce. Spodní struna (úsečka) je nejsilnější~-- \uv{E}
a~postupujeme směrem nahoru k~\uv{e2}. Pro leváky se schema otočí
o~180\,°. Potom cvičte alespoň 1\,h totéž dle not, které jsou uvedeny
(bez označení prstokladu, protože se bude různit dle užitého posuvného
prstokladu~-- viz 2.\,kap.) hned za prstoklady stupnic \uv{dur}.
Další cvičení bude užití těchto prstokladů v~různých polohách sedmi
tónových stupnic, například od tónu \uv{As} po půltónech směrem
nahoru, kam až vám to hmatník vaší kytary dovolí. Pak zase stejným
způsobem sestupujte. Snažte se dosáhnout 100\% bezchybnosti.
Zopakujeme si prstoklad levé ruky: 1~-- ukazovák, 2~-- prostředník,
3~-- prsteník, 4~-- malík. Prstoklady 1 a~2 můžete tedy hrát stupnice
do dvou oktáv, a to: As, A, Bé, H, C, Des, D, \dots, dále pak dle typu
kytary~-- Es, E, F~-- kolik vám hmatník vaší kytary umožní.
\end{document}
Kde se dozvědět více?
Problematika je podrobně popsána v učebnici LATEX pro začátečníky ve 2. kapitole na stranách 24–41. Problematika sazby cizojazyčných textů je v učebnici obsažena pouze na úrovni systému LATEX, tj. pomocí příkazů pro zápis diakritických znamének nad jednotlivé znaky jazyků používajících latinskou abecedu.