Hlavní navigace

ConTeXt: stránkové zlomy, informace o dokumentu

11. 6. 2007
Doba čtení: 3 minuty

Sdílet

V dnešním díle seriálu o ConTeXtu se budeme zabývat nejrůznějšími druhy stránkových zlomů, vynecháváním pevně daného volného místa na stránce, pružnými mezerami a ukládáním informací o dokumentu PDF. I na dnešek je připravena ukázka k aktuálnímu tématu.

Přechod na novou stránku

Přechod na novou stránku se zajišťuje příkazem \page. Tento příkaz má poměrně dost voleb. Defaultním parametrem je yes, který vloží pružnou mezeru a přejde na novou stránku. Totéž bez pružné mezery umožňuje parametr makeup. Nechceme-li explicitně určit, kde se má stránka lámat, ale chceme-li pouze vyjádřit, kde bychom zlom preferovali, máme k dispozici parametry preferencebigpreference.

Protože TeX (a tedy i ConTeXt) umějí rozlišit liché a sudé stránky, lze po něm rovněž požadovat přechod na lichou či sudou stránku parametry even a odd. Parametrem blank je možno vložit kompletně prázdnou stránku, kdežto parametr empty vkládá prázdnou stránku, na které je ovšem záhlaví a podobně.

Příkaz \page však neslouží pouze k vynucení přechodu na novou stránku, ale i k jejímu zakázání. Parametr no zabrání, je-li to možné, stránkovému zlomu. Krom toho existuje parametr disable, díky němuž lze ignorovat následující příkaz \page. Samozřejmě, že jej nebudeme využívat přímo, ale do maker se hodit rozhodně může. Aby toho nebylo málo, parametr reset ignoruje příkaz  disable.

Vynechání volného místa

Vynecháváme-li na nějaké konkrétní stránce místo, můžeme buď vynechat pevně danou plochu nebo můžeme použít pružnou mezeru, které připadne veškeré zbývající místo na stránce.

Vynechání pevné výšky se dělá příkazem \blank. Výšku mezery lze určit parametrem n*small, n*medium či n*big, dále také line a halfline. Stejně jako příkaz \page mají k dispozici parametry disable a reset. Použijeme-li příkaz \blank bez parametru, defaultně se použije \blank[medium]. Lze to pochopitelně opět přenastavit příkazem \setupblank, kterému prostě předáme parametry, které chceme používat jako defaultní.

Potřebujeme-li využít pružné vertikální mezery, máme k dispozici příkazy \vfil, \vfill a \vfilll. Ty jsou navzájem ekvivalentní, liší se pouze svou „silou”. Vzhledem k tomu, že existuje horizontálně působící obdoba těchto příkazů, ukážu to, vzhledem k větší jednoduchosti, raději na něm. Dejme tomu, že máme řádku začínající příkazem \hfil, po něm následuje nějaký text, poté \hfilll, další text a nakonec \hfill. Výsledkem bude první část textu právě na levém okraji stránky, velká mezera na prostředku a druhá část textu na pravém okraji, prostě proto, že čím víc „l”, tím větší sílu tento typ příkazů má. Samozřejmě na zarovnání na střed je třeba použít dvou stejně silných příkazů na jedné lince, jeden před textem, druhý za textem. Pro jistotu ještě poznamenávám, že je již ze samé logiky věci nelze použít pro zarovnání odstavce.

Prostředí makeup

Kniha může, krom hlavní části, obsahovat ještě různé další, jako je například titulní stránka. Takovéto části se zpravidla nečíslují a často ani nemají obsahovat záhlaví a zápatí.

Aby bylo možno jednoduše rozlišovat mezi hlavní částí dokumentu a mezi zbytkem, existuje prostředí makeup, které obklopuje části, které mají být vyňaty ze standardního layoutu dokumentu.

PDF informace

Sázíme-li do PDF souboru, můžeme využít příkaz \pdfinfo k zapsání informací o dokumentu. Tyto informace budou zpřístupněny přes dialog Vlastnosti ve vašem PDF prohlížeči. Vypadat může například takto:

\pdfinfo{
  /Title           (ConTeXt: ukazka)
  /Author          (Jakub Stastny)
  /Subject         (ukazka)
  /CreationDate    (21.03.2007)
  /ModDate         (\currentdate)
  /Producer        (ConTeXt)
  /Keywords        (ConTeXt,TeX,PDF)
}

Myslím, že k tomu asi není moc co dodat, snad jen tolik, že je lépe nepoužívat zde diakritiku, protože z toho většina prohlížečů PDF udělá rozsypaný čaj.

pdf_properties

Vlastnosti dokumentu v Evince. Ve slově „ukázka” byla použita diakritika.

skoleni

Ukázka

Dnešní ukázka se hodně točí okolo titulních stran a podobně, protože přesně k nim se zmíněné znalosti hodí. Opět je k dispozici jak zdrojový kód v ConTeXtu, tak výsledný soubor PDF.

Příště

V příštím díle se podíváme na dosti podstatnou vlastnost TeXu – na makra. V TeXových dokumentech jsou neocenitelná, ale na druhou stranu nejsou zcela jednoduchá, intuitivní, přehledná, natožpak snadno debugovatelná. I tak ale se jejich používání rozhodně vyplatí.

Autor článku

Jakub Šťastný byl v letech 2007 až 2008 redaktorem serveru Root.cz. Mezi jeho zájmy patří Linux, programování a typografický systém TeX.