Hi,
I'm not clear what you mean by "half-double-sided".  Can you provide a short 
example that illustrates the problem, and complete examples of your two 
customized templates?
  
Bob Stayton
Sagehill Enterprises
[email protected]


  ----- Original Message ----- 
  From: Mathias Schindler 
  To: DocBook Apps 
  Sent: Monday, October 05, 2009 6:00 AM
  Subject: [docbook-apps] Don't break chapter's to recto pages


  Hi!

   

  I have a problem concerning the page breaks of <chapter> elements in 
double-sided PDF output!

   

  The case is that I want <part>s, <toc>, <preface>, <index> and <colophon> to 
break to the next recto page, while chapters and appendices should only break 
to the next page (regardless if recto or verso).

   

  First I tried to modify the "force.page.count"- and 
"initial.page.number"-templates as follows:

   

  force.page.count(only changed content)::

  <xsl:choose>

     <xsl:when test="$element != 'chapter'">auto</xsl:when>  

     <xsl:when test="$double.sided != 0">end-on-even</xsl:when>  

     <xsl:otherwise>no-force</xsl:otherwise>

  </xsl:choose>

   

  initial.page.number(only changed content):

  <xsl:when test="$double.sided != 0">

          <xsl:choose>

                 <xsl:when test="$element = 'chapter'">auto</xsl:when>

  .

   

  Unfortunately this ended up in displaying me a "half-double-sided" and 
"half-single-sided" document. Furthermore, not every chapter wants to wrap to a 
verso page.

   

  I also tried to add a custom user-pagemaster:

   

  <xsl:template name="user.pagemasters">

      <fo:page-sequence-master master-name="body-chapter">

        <fo:repeatable-page-master-alternatives>

          <fo:conditional-page-master-reference master-reference="blank"

                                                blank-or-not-blank="blank"/>

   

          <fo:conditional-page-master-reference master-reference="body-odd"

                                                odd-or-even="odd"/>

                                                                              

          <fo:conditional-page-master-reference odd-or-even="even">             
                                                           

            <xsl:attribute name="master-reference">

              <xsl:choose>

                <xsl:when test="$double.sided != 0">body-even</xsl:when>

                <xsl:otherwise>body-odd</xsl:otherwise>

              </xsl:choose>

            </xsl:attribute>

          </fo:conditional-page-master-reference>

        </fo:repeatable-page-master-alternatives>

      </fo:page-sequence-master>

  </xsl:template>

   

  <xsl:template name="select.user.pagemaster">

    <xsl:param name="element"/>

    <xsl:param name="pageclass"/>

    <xsl:param name="default-pagemaster"/>

   

    <xsl:choose>

      <xsl:when test="$element = 'chapter'">

        <xsl:value-of select="'body-chapter'"/>

      </xsl:when>

      <xsl:otherwise>

        <xsl:value-of select="$default-pagemaster"/>

      </xsl:otherwise>

    </xsl:choose>

  </xsl:template>

   

  After that it works almost perfect - almost. The double-sided output is fine 
but again not every chapter breaks to a verso page. I sometimes have one blank 
page in front of a chapter and sometimes not.

   

  Can anyone help me?

   

  Thanks in advance,

   

  Mathias Schindler

Reply via email to