Úprava záhlaví (header) dokumentu

Josef Kauc josef.kauc na medisoft.cz
Pátek Září 2 14:48:15 CEST 2005


Hezký den všem!

Prosím, potřeboval bych upravit záhlaví dokumentu při pdf výstupu. Při 
standardním použití stylu pro tiskový výstup je psán název kapitoly 
doprostřed záhlaví. To by až tak nevadilo, ale bohužel někdy je text 
kapitoly delší a pak je psán pod sebou, protože místo pro text je 
omezeno na nějakou pevně danou délku. Potřeboval bych to upravit tak, 
aby toto omezení délky pro text v záhlaví nebylo, případně zkusit text 
názvu kapitoly na sudých a lichých stránkách mít zarovnáno zleva nebo 
zprava.

Zkusil jsem upravit pagesetup.xsl v části <xsl:template 
name="header.content">, konkrétně místo tohoto kódu

<xsl:when test="($sequence='odd' or $sequence='even') and 
$position='center'">
        <xsl:if test="$pageclass != 'titlepage'">
          <xsl:choose>
            <xsl:when test="ancestor::book and ($double.sided != 0)">
              <fo:retrieve-marker retrieve-class-name="section.head.marker"
                                  
retrieve-position="first-including-carryover"
                                  retrieve-boundary="page-sequence"/>
            </xsl:when>
            <xsl:otherwise>
              <xsl:apply-templates select="." mode="titleabbrev.markup"/>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:if>
 </xsl:when>

jsem zkusil dát tuto upravenou verzi (double.side zatím neřeším)

<xsl:when test="$sequence='odd' and $position='right'">
        <xsl:if test="$pageclass != 'titlepage'">
            <xsl:apply-templates select="." 
mode="titleabbrev.markup"/>      
        </xsl:if>
 </xsl:when>
     
  <xsl:when test="$sequence='even' and $position='left'">
        <xsl:if test="$pageclass != 'titlepage'">
            <xsl:apply-templates select="." 
mode="titleabbrev.markup"/>      
        </xsl:if>
   </xsl:when>

Po této úpravě je ovšem  text v záhlaví (název kapitoly) na všech 
stránkách pouze v pravo. Nikoli na sudých vlevo a na lichých vpravo, jak 
jsem zamýšlel. Navíc se nevyřešil problém s trochu delším textem v 
záhlaví, který je stále rozdělen na dva řádky.

Jak zrušit omezení pevně  dané délky pro text v záhlaví, ať již bude 
centrovaně nebo po stranách?
Jak dosáhnout zarovnání textu v záhlaví  na sudých stránkách vlevo a na 
lichých vpravo?
A když už si hraji se záhlavím, jak nastavit, aby text v záhlaví byl 
vždy velkým písmem?

Díky předem za radu či nasměrování.

Josef Kauc



Další informace o konferenci Docbook