<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Dobrý den.<br>
    <br>
    Pokud používáte pdfTeX, ten umí mikrotypografická rozšíření. Ta
    obvykle problémy se zlomem výrazně sníží. V LaTeXu je na to balíček
    microtype, jak se aktivují v plainu, nevím. Ale za pokus to stojí,
    zkusil jsem to (poprvé) nedávno na několikasetstránkové texty a
    rozdíl je markantní.<br>
    <br>
    LuaTeX umí těch rozšíření o něco míň, xeTeX ještě míň. Ale i to by
    asi stačilo. Informace lze najít v dokumentaci k balíčku microtype.<br>
    <br>
    Zdraví<br>
        Jaromír Kuben<br>
    <br>
    <div class="moz-cite-prefix">Dne 1. 9. 2015 v 12:05 Marcel Svitalský
      napsal(a):<br>
    </div>
    <blockquote cite="mid:55E57872.5080401@centrum.cz" type="cite">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      (Tento dotaz jsem postnul na tex.stackexchange.com, ale s
      dovolením se zeptám i zde.)<br>
      <br>
      Dobrý den,<br>
      <br>
      pracuji teď na větším projektu s textem, jejž naprosto nemohu
      měnit, takže občas narážím na problémy se zlomem. Vytvořil jsem si
      tedy následující makro pro plain i LaTeX (jehož užití samozřejmě
      předpokládá, že už je nastaveno hyphenation atp.):<br>
      <br>
      <blockquote><tt>\def\emergency #1 #2\par{%</tt><tt><br>
        </tt><tt>\begingroup</tt><tt><br>
        </tt><tt>    \ifcase #1</tt><tt><br>
        </tt><tt>        \message{Emergency level 0 does nothing at
          all.}%</tt><tt><br>
        </tt><tt>    \or</tt><tt><br>
        </tt><tt>        \tolerance = 250</tt><tt><br>
        </tt><tt>        \message{Emergency level 1: increasing
          \string\tolerance\space to \the\tolerance.}%</tt><tt><br>
        </tt><tt>    \or</tt><tt><br>
        </tt><tt>        \tolerance = 300</tt><tt><br>
        </tt><tt>        \message{Emergency level 2: increasing
          \string\tolerance\space to \the\tolerance.}%</tt><tt><br>
        </tt><tt>    \or</tt><tt><br>
        </tt><tt>        \tolerance = 300</tt><tt><br>
        </tt><tt>        \righthyphenmin = 2</tt><tt><br>
        </tt><tt>        \message{Emergency level 3: increasing
          \string\tolerance\space to \the\tolerance,</tt><tt><br>
        </tt><tt>                 decreasing
          \string\righthyphenmin\space to \the\righthyphenmin.}%</tt><tt><br>
        </tt><tt>        \message{You might need to set hyphenation
          properly for this emergency level to work.}%</tt><tt><br>
        </tt><tt>    \or</tt><tt><br>
        </tt><tt>        \righthyphenmin = 2</tt><tt><br>
        </tt><tt>        \emergencystretch = 5pt</tt><tt><br>
        </tt><tt>        \message{Emergency level 4: increasing
          \string\emergencystretch\space to \the\emergencystretch,</tt><tt><br>
        </tt><tt>                 decreasing
          \string\righthyphenmin\space to \the\righthyphenmin.}%</tt><tt><br>
        </tt><tt>        \message{You might need to set hyphenation
          properly for this emergency level to work.}%</tt><tt><br>
        </tt><tt>    \or</tt><tt><br>
        </tt><tt>        \righthyphenmin = 2</tt><tt><br>
        </tt><tt>        \emergencystretch = 8pt</tt><tt><br>
        </tt><tt>        \message{Emergency level 5: increasing
          \string\emergencystretch\space to \the\emergencystretch,</tt><tt><br>
        </tt><tt>                 decreasing
          \string\righthyphenmin\space to \the\righthyphenmin.}%</tt><tt><br>
        </tt><tt>        \message{You might need to set hyphenation
          properly for this emergency level to work.}%</tt><tt><br>
        </tt><tt>    \else</tt><tt><br>
        </tt><tt>        \errmessage{Emergency level #1 not supported!}%</tt><tt><br>
        </tt><tt>    \fi</tt><tt><br>
        </tt><tt>    #2</tt><tt><br>
        </tt><tt>    \par</tt><tt><br>
        </tt><tt>\endgroup</tt><tt><br>
        </tt><tt>}</tt><tt><br>
        </tt></blockquote>
      <br>
      Předpoklad je takový, že makro umístím na začátek odstavce, jenž
      dělá problémy, a vyzkouším postupně hodnoty od jedné do pěti.<br>
      <br>
      <blockquote><tt>...předchozí odstavec.<br>
          <br>
          \emergency 1 % nebo 2, 3 až 5<br>
          Text odstavce, jenž se chová nehezky a odmítá se pěkně
          zlomit...<br>
          <br>
        </tt></blockquote>
      Nejsem ale v nastavování těchto parametrů příliš zkušený (načrtl
      jsem to narychlo po nahlédnutí do TBN) a jsem trochu v časovém
      stresu, proto bych byl vděčný, kdyby se kdokoli zkušenější na to
      případně podíval a posoudil, zda jsou ty kroky přiměřeně
      rovnoměrné nebo naopak možná je některý příliš hrubý, zda by to
      nešlo někde lépe atd. apod.<br>
      <br>
      Děkuji a zdravím<br>
      Marcel Svitalský<br>
      <br>
      <div class="moz-signature">-- <br>
        Marcel Svitalský<i> </i> </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
csTeX mailing list
<a class="moz-txt-link-abbreviated" href="mailto:csTeX@cs.felk.cvut.cz">csTeX@cs.felk.cvut.cz</a>
<a class="moz-txt-link-freetext" href="https://lists.felk.cvut.cz/mailman/listinfo/cstex">https://lists.felk.cvut.cz/mailman/listinfo/cstex</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>