Pridani obrazku do headeru pri vystupu do PDF

Veselý Jiří jvesely na bpz.muzlin.cz
Pátek Květen 27 09:48:56 CEST 2005


Pridal jsem do vlastni definice pro DPF, hlasi mi to vsak chyby.
Muzete mi presneji popsat co mam udelat. Dekuji.
/******************/
<?xml version="1.0" encoding="windows-1250"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                xmlns:fo="http://www.w3.org/1999/XSL/Format"
                version="1.0">

<xsl:import href="file:///D:/docbook/xsl/fo/docbook.xsl"/>

<!-- ┌pravy parametr¨ -->


<!-- Velikost papÝru -->
<xsl:param name="paper.type" select="'A4'"/>

<!-- jazyk -->
<xsl:param name="l10n.gentext.language" select="'cs'" />

<!-- XSLT procesor m¨×e pou×Ývat rozÜÝ°enÝ pro callouts apod. -->
<xsl:param name="use.extensions" select="1"/>

<!-- RozÜÝ°enÝ specifickß pro danř FO procesor -->
<!-- <xsl:param name="passivetex.extensions" select="1"/> -->


<xsl:param name="xep.extensions" select="1"/>

<!-- Velikost pÝsma textu -->
<xsl:param name="body.font.master">10</xsl:param> 

<!-- Velikost okraj¨ -->
<xsl:param name="page.margin.inner" select="'1in'"/>
<xsl:param name="page.margin.outer" select="'1in'"/>

<!-- ╚ÝslovßnÝ sekcÝ a kapitol -->
<xsl:param name="section.autolabel" select="0"/>
<xsl:param name="section.label.includes.component.label" select="0"/>
<xsl:param name="chapter.autolabel" select="0"/>
<xsl:param name="appendix.autolabel" select="1"/>
<xsl:param name="part.autolabel" select="0"/>
<xsl:param name="preface.autolabel" select="0"/>


<!-- Nechceme obrßzek -->
<xsl:param name="draft.watermark.image" select="''"/>

<!-- Nadpisy jsou zarovnßny s textem, jak je zvykem v evropskÚ typografii
-->
<xsl:param name="title.margin.left" select="'0pt'"/>


<!-- Pouzite pismo musi byt registrovano v fo -->
<!-- Pismo pro nadpisy -->
<!-- <xsl:param name="title.font.family" select="'Tahomabd'"></xsl:param>
-->

<!-- Pismo pro telo dokumentu -->
<!--<xsl:param name="body.font.family" select="'TahomaCZ'"></xsl:param> -->


<!-- Rozsireni FOPu -->
<xsl:param name="fop.extensions" select="1"></xsl:param>

<!-- Do jake hloubky se bude generovat obsah -->
<xsl:param name="toc.section.depth">2</xsl:param>


<!-- Specify how formal object titles should be styled. (figures, etc.) -->
  <xsl:attribute-set name="formal.title.properties" 
                   use-attribute-sets="normal.para.spacing">
    <xsl:attribute name="font-family">Helvetica</xsl:attribute>
    <xsl:attribute name="font-weight">normal</xsl:attribute>
    <xsl:attribute name="font-size">5pt</xsl:attribute>
    <xsl:attribute name="hyphenate">false</xsl:attribute>
    <xsl:attribute name="space-after.minimum">0.4em</xsl:attribute>
    <xsl:attribute name="space-after.optimum">0.6em</xsl:attribute>
    <xsl:attribute name="space-after.maximum">0.8em</xsl:attribute>
    <xsl:attribute name="keep-together.within-column">always</xsl:attribute>
  </xsl:attribute-set>


<!-- XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX UPRAVY STYLU
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX  -->

<!-- Predefinovani stylu pro Footer stranky -->
<xsl:template name="footer.content">
  <xsl:param name="pageclass" select="''"/>
  <xsl:param name="sequence" select="''"/>
  <xsl:param name="position" select="''"/>
  <xsl:param name="gentext-key" select="''"/>

<!--
  <fo:block>
    <xsl:value-of select="$pageclass"/>
    <xsl:text>, </xsl:text>
    <xsl:value-of select="$sequence"/>
    <xsl:text>, </xsl:text>
    <xsl:value-of select="$position"/>
    <xsl:text>, </xsl:text>
    <xsl:value-of select="$gentext-key"/>
  </fo:block>
-->

  <fo:block>
    <!-- pageclass can be front, body, back -->
    <!-- sequence can be odd, even, first, blank -->
    <!-- position can be left, center, right -->
    <xsl:choose>
      <xsl:when test="$pageclass = 'titlepage'">
        <!-- nop; no footer on title pages -->
      </xsl:when>

      <xsl:when test="$double.sided != 0 and $sequence = 'even'
                      and $position='left'">
        <fo:page-number/>
      </xsl:when>

      <xsl:when test="$double.sided != 0 and ($sequence = 'odd' or $sequence
= 'first')
                      and $position='right'">
        <fo:page-number/>
      </xsl:when>

      <!-- MK, upraveny styly pro paticku 3.5.2004, cislovani stran vpravo,
doplnena verze vlevo a firma doprostred -->

      <xsl:when test="$double.sided = 0 and $position='left'">
         <xsl:text>ISDIM s.r.o.</xsl:text>
      </xsl:when>

      <xsl:when test="$double.sided = 0 and $position='left'">
         <xsl:text>verze ...</xsl:text>
      </xsl:when>


      <xsl:when test="$double.sided = 0 and $position='right'">
         <xsl:text>strana </xsl:text>
         <fo:page-number/>
         <fo:page-number-citation ref-id="endofdoc"/>
      </xsl:when>
        

      <xsl:when test="$sequence='blank'">
        <xsl:choose>
          <xsl:when test="$double.sided != 0 and $position = 'left'">
            <fo:page-number/>
          </xsl:when>
          <xsl:when test="$double.sided = 0 and $position = 'center'">
            <fo:page-number/>
          </xsl:when>
          <xsl:otherwise>
            <!-- nop -->
          </xsl:otherwise>
        </xsl:choose>
      </xsl:when>


      <xsl:otherwise>
        <!-- nop -->
      </xsl:otherwise>
    </xsl:choose>
  </fo:block>
</xsl:template>


<!-- Predefinovani stylu pro Header stranky -->

<xsl:template name="header.content">
  <xsl:param name="pageclass" select="''"/>
  <xsl:param name="sequence" select="''"/>
  <xsl:param name="position" select="''"/>
  <xsl:param name="gentext-key" select="''"/>


<!--
  <fo:block>
    <xsl:value-of select="$pageclass"/>
    <xsl:text>, </xsl:text>
    <xsl:value-of select="$sequence"/>
    <xsl:text>, </xsl:text>
    <xsl:value-of select="$position"/>
    <xsl:text>, </xsl:text>
    <xsl:value-of select="$gentext-key"/>
  </fo:block>
-->

  <fo:block>

    <!-- sequence can be odd, even, first, blank -->
    <!-- position can be left, center, right -->
    <xsl:choose>
      <xsl:when test="$sequence = 'blank'">
        <!-- nothing -->
      </xsl:when>

      <xsl:when test="$position='left'">
        <!-- Same for odd, even, empty, and blank sequences -->
        <xsl:call-template name="draft.text"/>
      </xsl:when>

      <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>




<!--     <xsl:when test="$double.sided = 0 and $position='right'">
         <xsl:text>strana </xsl:text>
         <fo:page-number/>
         <fo:page-number-citation ref-id="endofdoc"/>
      </xsl:when>
-->


     <xsl:when test="$position='right'">
        <!-- Same for odd, even, empty, and blank sequences -->
        <xsl:call-template name="draft.text"/>
      </xsl:when>

      <xsl:when test="$sequence = 'first'">
        <!-- nothing for first pages -->
      </xsl:when>

      <xsl:when test="$sequence = 'blank'">
        <!-- nothing for blank pages -->
      </xsl:when>




<!-- XXXXXXXXXXXXXXXXXXXXXXXX -->
<!-- Logo v hlavice -->
<xsl:when test="$Position = 'center'">
  <fo:external-graphic content-height="1.2cm">
    <xsl:attribute name="src">
      <xsl:call-template name="fo-external-image">
        <xsl:with-param name="filename" select="logo.jpg"/>
      </xsl:call-template>
    </xsl:attribute>
  </fo:external-graphic>
</xsl:when>

<!-- XXXXXXXXXXXXXXXXXXXXXXXX -->
</xsl:choose>

  </fo:block>
</xsl:template>

</xsl:stylesheet>
/******************/

Jiri Vesely

-----Original Message-----
From: Jirka Kosek [mailto:jirka na kosek.cz] 
Sent: Thursday, May 26, 2005 5:40 PM
To: docbook na linux.cz
Subject: Re: Pridani obrazku do headeru pri vystupu do PDF

Veselý Jiří wrote:

> potrebuji abych mel  v zahlavi dokumentu PDF, generovaneho z Docbooku
pomoci
> xsl stylu pres saxon a fo,  obrazek, napr. firemni logo, a to pouze na
> stranky zacinajici za obsahem. Pomoci  docbooku vytvarim manual.

A zkoušel jste níže popsanou metodu?

http://sagehill.net/docbookxsl/PrintHeaders.html#GraphicInHeader

-- 
------------------------------------------------------------------
   Jirka Kosek     e-mail: jirka na kosek.cz     http://www.kosek.cz
------------------------------------------------------------------
   Profesionální školení a poradenství v oblasti technologií XML.
      Podívejte se na náš nově spuštěný web http://DocBook.cz
        Podrobný přehled školení http://xmlguru.cz/skoleni/
------------------------------------------------------------------



Další informace o konferenci Docbook