Deleni slov na strankovem zlomu

Petr Olsak petr at olsak.net
Fri Jul 28 17:53:08 CEST 2006



On Fri, 28 Jul 2006, Zdenek Wagner wrote:

> On Fri, 28 Jul 2006, Jano Kula wrote:
>
> > pad-466 at seznam.cz wrote:
> > > Jak lze zabrånit rozdělení slov na strånkovÊm zlomu? Případně, v
> > > případě sazby "twoside", jen na zlomu ze strånky lichÊ na sudou? PD
> >
> > pokud vim nijak automaticky (rad se necham prekvapit). pokusem a omylem
> > pomoci \hbox{slovo} a hranim si s vlnkou.
> >
> Skutecne to nejde. Kdyz TeX lame odstavec na radky, vubec netusi, kde bude
> strankovy zlom. Nalamane radky se vkladaji do vertikalniho seznamu a ten
> se v jistem okamziku lame na stranky. V te dobe jiz nelze radky prelamat
> jinak, pouze hodnotou \brokenpenalty=10000 muzete zakazat strankovy zlom
> za radkem, kde je rozdelene slovo. Vysledkem je vsak underful \vbox when
> \output was active.

Nepsal bych explicitne, ze to nejde. Knuth implementoval \brokenpenalty
prave pro pripad, aby se neobjevovala rozdelena slova na konci stranek.
Problem je, ze to predpoklada pruznost mezi radky, tj. napriklad
matematicke vzorce s pruznou mezerou nad a pod, nebo nepatrne pruzny
\parskip (implicitni hodnota v plainu) nebo pruznost mezi vsemi radky
v \baselineskip. Pokud tedy nevyzadujete radkovy rejstrik, reseni
existuje. Pokud ale vyzadujete radkovy rejstrik, pak je problemu daleko
vice: i \widowpenalty a \clupbenalty v hodnote 10000 nadela hodne
starosti.

Jiny problem je stridave nastavovat a rusit \brokenpenalty ve
dvousloupcove sazbe. To zalezi na vystupni rutine, jak resi dvousloupcovou
sazbu. Moznost dlouheho odstavce pres nekolik sloupcu situaci jiste hodne
komplikuje.

Zdravim

Petr Olsak






More information about the csTeX mailing list