OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

docbook-apps message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: [docbook-apps] How to change first title page only? - Error in Documentation


No, the example is correct.  The default page-master is indeed named 
'titlepage', which is defined in fo/pagesetup.xsl.  You want to substitute 
your page-master named 'my-titlepage':

<xsl:when test="$default-pagemaster = 'titlepage'">
  <xsl:value-of select="'my-titlepage'"/>
</xsl:when>

I think you are misunderstanding how the page-masters work.  You don't want 
to select your simple-page-master named 'my-titlepage-first'.  Rather you 
want to select a page-sequence-master, which includes your new 
simple-page-master.

In constructing your page-sequence-master, you said you wanted to keep the 
original page designs after the first.  So you don't need to declare 
"my-titlepage-odd" and "my-titlepage-even" and can just reference the 
existing simple-page-masters:

    <fo:page-sequence-master master-name="my-titlepage">
      <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="my-titlepage-first" page-position="first"/>
        <fo:conditional-page-master-reference 
master-reference="titlepage-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">titlepage-even</xsl:when>
              <xsl:otherwise>titlepage-odd</xsl:otherwise>
            </xsl:choose>
          </xsl:attribute>
        </fo:conditional-page-master-reference>
      </fo:repeatable-page-master-alternatives>
    </fo:page-sequence-master>

Your settings for book.titlepage.recto should still work with the new 
page-master.  The template with match="book" in fo/division.xsl has this:

      <fo:flow flow-name="xsl-region-body">
        <xsl:call-template name="set.flow.properties">
          <xsl:with-param name="element" select="local-name(.)"/>
          <xsl:with-param name="master-reference"
                          select="$titlepage-master-reference"/>
        </xsl:call-template>

        <fo:block id="{$id}">
          <xsl:call-template name="book.titlepage"/>
        </fo:block>
      </fo:flow>

It is calling the book.titlepage template, which calls 
book.titlepage.recto, regardless of the name of your titlepage page-master.

Bob Stayton
Sagehill Enterprises
DocBook Consulting
bobs@sagehill.net


----- Original Message ----- 
From: "Darya Said-Akbari" <darya_akbari@yahoo.com>
To: <docbook-apps@lists.oasis-open.org>
Sent: Tuesday, October 24, 2006 9:25 AM
Subject: RE: [docbook-apps] How to change first title page only? - Error in 
Documentation


> Hi,
>
> one pitfall in documentation at
> http://www.sagehill.net/docbookxsl/PageDesign.html is
> the line <xsl:when test="$default-pagemaster =
> 'titlepage'"> which is somehow misleading. It should
> be <xsl:when test="$default-pagemaster =
> 'my-titlepage'"> to make it clear that not the default
> 'titlepage' is meant.
>
> When I make this change I get full control of
> my-titlepage-first.
>
> However since I use <xsl:template
> name="book.titlepage.recto"> in my customization layer
> as described at
> http://www.sagehill.net/docbookxsl/TitlePagePrint.html#TitlepageTableLayout
> I have now the problem that all my title page settings
> under <xsl:template name="book.titlepage.recto"> do
> not work anymore :(
>
> This seems to be also plausible because I am not
> anymore on 'titlepage' but on 'my-titlepage'.
>
> What shall I do with all my titlepage settings from
> <xsl:template name="book.titlepage.recto">?
>
> Any hints?
>
> P.S.: If someone wants to take a look into my
> customization file please view the attached file.
>
> Regards,
> Darya
> --- Darya Said-Akbari <darya_akbari@yahoo.com>
> schrieb:
>
>> Hi,
>>
>> I only want to change my first title page and keep
>> all
>> other default title page settings.
>>
>> I tried it with a custom page master (see the
>> attached
>> file) but changes to my-titlepage-first also affect
>> odd and even titlepages :(
>>
>> Is there a way I can change only the first
>> titlepage?
>>
>> I want to have a zero top margin and a zero left
>> margin  and to place an image which spans the whole
>> page-width  to my first titlepage.
>>
>> The rest of pages belonging to titlepage (blank,
>> odd,
>> even) should remain as the default shows them.
>>
>> Any hints?
>>
>> Regards,
>> Darya
>>
>>
>>
>>
>>
>>
>>
> ___________________________________________________________
>>
>> Der frühe Vogel fängt den Wurm. Hier gelangen Sie
>> zum neuen Yahoo! Mail: http://mail.yahoo.de>   <!--
> title pages, custom page masters-->
>>   <xsl:template name="user.pagemasters">
>>     <!-- title page -->
>>     <fo:simple-page-master
>> master-name="my-titlepage-first"
>>
>> page-width="{$page.width}"
>>
>> page-height="{$page.height}"
>>                            margin-top="0pt"
>>
>> margin-bottom="{$page.margin.bottom}"
>>                            margin-left="0pt"
>>
>> margin-right="{$page.margin.outer}">
>>       <fo:region-body
>> margin-bottom="{$body.margin.bottom}"
>>
>> margin-top="{$body.margin.top}"
>>
>> column-gap="{$column.gap.titlepage}"
>>
>> column-count="{$column.count.titlepage}">
>>       </fo:region-body>
>>       <fo:region-before
>> region-name="xsl-region-before-first"
>>
>> extent="{$region.before.extent}"
>>                         display-align="before"/>
>>       <fo:region-after
>> region-name="xsl-region-after-first"
>>
>> extent="{$region.after.extent}"
>>                         display-align="after"/>
>>     </fo:simple-page-master>
>>
>>     <fo:simple-page-master
>> master-name="my-titlepage-odd"
>>
>> page-width="{$page.width}"
>>
>> page-height="{$page.height}"
>>
>> margin-top="{$page.margin.top}"
>>
>> margin-bottom="{$page.margin.bottom}"
>>
>> margin-left="{$margin.left.inner}"
>>
>> margin-right="{$page.margin.outer}">
>>       <fo:region-body
>> margin-bottom="{$body.margin.bottom}"
>>
>> margin-top="{$body.margin.top}"
>>
>> column-gap="{$column.gap.titlepage}"
>>
>> column-count="{$column.count.titlepage}">
>>       </fo:region-body>
>>       <fo:region-before
>> region-name="xsl-region-before-odd"
>>
>> extent="{$region.before.extent}"
>>                         display-align="before"/>
>>       <fo:region-after
>> region-name="xsl-region-after-odd"
>>
>> extent="{$region.after.extent}"
>>                         display-align="after"/>
>>     </fo:simple-page-master>
>>
>>     <fo:simple-page-master
>> master-name="my-titlepage-even"
>>
>> page-width="{$page.width}"
>>
>> page-height="{$page.height}"
>>
>> margin-top="{$page.margin.top}"
>>
>> margin-bottom="{$page.margin.bottom}"
>>
>> margin-left="{$margin.left.outer}"
>>
>> margin-right="{$page.margin.inner}">
>>       <fo:region-body
>> margin-bottom="{$body.margin.bottom}"
>>
>> margin-top="{$body.margin.top}"
>>
>> column-gap="{$column.gap.titlepage}"
>>
>> column-count="{$column.count.titlepage}">
>>       </fo:region-body>
>>       <fo:region-before
>> region-name="xsl-region-before-even"
>>
>> extent="{$region.before.extent}"
>>                         display-align="before"/>
>>       <fo:region-after
>> region-name="xsl-region-after-even"
>>
>> extent="{$region.after.extent}"
>>                         display-align="after"/>
>>     </fo:simple-page-master>
>>
>>     <!-- setup for title page -->
>>     <fo:page-sequence-master
>> master-name="my-titlepage">
>>       <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="my-titlepage-first"
>>
>> page-position="first"/>
>>         <fo:conditional-page-master-reference
>> master-reference="my-titlepage-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">my-titlepage-even</xsl:when>
>>
>> <xsl:otherwise>my-titlepage-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"/>
>>     <!-- Return my customized title page master name
>> if for titlepage, otherwise return the default -->
>>     <xsl:choose>
>>       <xsl:when test="$default-pagemaster =
>> 'titlepage'">
>>         <xsl:value-of select="'my-titlepage-first'"
>> />
>>       </xsl:when>
>>       <xsl:otherwise>
>>         <xsl:value-of select="$default-pagemaster"/>
>>       </xsl:otherwise>
>>     </xsl:choose>
>>   </xsl:template>
>>
>> >
> ---------------------------------------------------------------------
>> To unsubscribe, e-mail:
>> docbook-apps-unsubscribe@lists.oasis-open.org
>> For additional commands, e-mail:
> docbook-apps-help@lists.oasis-open.org
>
>
>
>
> ___________________________________________________________
> Telefonate ohne weitere Kosten vom PC zum PC: http://messenger.yahoo.de


--------------------------------------------------------------------------------


> ---------------------------------------------------------------------
> To unsubscribe, e-mail: docbook-apps-unsubscribe@lists.oasis-open.org
> For additional commands, e-mail: docbook-apps-help@lists.oasis-open.org 




[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]