Hi,
thank you very much.
First of all, one correction ...
<xsl:variable name="appendix.content"> <!-- <<========= Add this line here
-->
<fo:block id='{$id}'>
<xsl:if test="$axf.extensions != 0">
<xsl:attribute name="axf:outline-level">
...
<xsl:apply-templates/>
</fo:block>
</xsl:variable> <!-- <<==============Add this line here after all the
content -->
I was wondering why the variable appendix.content can't be find while
processing. Just the prefix xsl: was missing.
Second one is: A template named page-sequence does not exist or something
else ElemTemplateElement-Error: page-sequence
<!-- And then add this template call -->
<xsl:call-template name="page-sequence">
<xsl:with-param name="content" select="$appendix.content"/>
</xsl:call-template>
I tried to find the template called "page-sequence" but can't find it.
Any further suggestions?
Thanks,
Best Regards,
Lee
Bob Stayton wrote:
>
> OK, your landscape page-masters are working, as indicated by the results
> when you put the attribute on the root element.
>
> The problem is that a page-master is applied at the page-sequence level,
> but
> an appendix inside an article does not generate its own page-sequence.
> The
> default assumption was that in an article, you don't want a page break
> when
> you start an appendix. To get your appendix to be landscaped, you'll need
> to change the behavior of the article template and the article/appendix
> template. Use something like this (untested) in a customization layer:
>
> At the end of the template with match="article" in fo/component.xsl,
> change
>
> <xsl:apply-templates/>
> </fo:flow>
> </fo:page-sequence>
>
> to:
>
> <xsl:apply-templates select="node()[not(self::appendix)]"/>
> </fo:flow>
> </fo:page-sequence>
>
> <xsl:apply-templates select="appendix"/>
>
> That excludes each appendix from the article's page-sequence and processes
> them after the article page-sequence ends.
>
> In the template with match="article/appendix", put all the content inside
> a
> variable, and then pass that as a parameter to the template named
> "page.sequence":
>
> <xsl:template match="article/appendix">
> <xsl:variable name="id">
> <xsl:call-template name="object.id"/>
> </xsl:variable>
>
> <xsl:variable name="title">
> <xsl:apply-templates select="." mode="object.title.markup"/>
> </xsl:variable>
>
> <xsl:variable name="titleabbrev">
> <xsl:apply-templates select="." mode="titleabbrev.markup"/>
> </xsl:variable>
>
> <variable name="appendix.content"> <!-- <<========= Add this line
> here -->
> <fo:block id='{$id}'>
> <xsl:if test="$axf.extensions != 0">
> <xsl:attribute name="axf:outline-level">
> ...
> <xsl:apply-templates/>
> </fo:block>
> </variable> <!-- <<==============Add this line here after all the
> content -->
>
> <!-- And then add this template call -->
> <xsl:call-template name="page-sequence">
> <xsl:with-param name="content" select="$appendix.content"/>
> </xsl:call-template>
>
> That will put the appendix into its own page-sequence.
>
> Bob Stayton
> Sagehill Enterprises
> [EMAIL PROTECTED]
>
>
> ----- Original Message -----
> From: "Leeloo5e" <[EMAIL PROTECTED]>
> To: <[email protected]>
> Sent: Friday, July 04, 2008 12:44 AM
> Subject: Re: [docbook-apps] Rotate Region Body for Landscape Pages
>
>
>>
>> Hi,
>>
>> thanks. I changed it and processed again. The appendix is still in
>> portrait
>> not in landscape.
>>
>> First processed it with FOP 0.95 beta on Windows-System.
>> Then processed it with xsltproc to generate a fo and have a look at this.
>> Finding the page-master-sequence in the fo file
>>
>> <fo:page-sequence-master
>> master-name="landscape"><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="landscape-first"
>> page-position="first"/><fo:conditional-page-master-reference
>> master-reference="landscape-odd"
>> odd-or-even="odd"/><fo:conditional-page-master-reference
>> odd-or-even="even"
>> master-reference="landscape-odd"/></fo:repeatable-page-master-alternatives></fo:page-sequence-master>
>>
>> But the PDF-Output is still in portrait also when I processed the FO file
>> again with the latest build of FOP.
>>
>> Just add role="landscape" to my root article and processed again. Now the
>> whole pdf output is in landscape ... header and footer still portrait -
>> thats fine.
>>
>> The appendix I would like to output in landscape format is inside the
>> root
>> article and this is still in normal format portrait ... Could be this the
>> reason? Should I create a separat appendix-file?
>>
>> Thank you very much.
>> Best Regards,
>> Lee
>>
>>
>> Bob Stayton wrote:
>>>
>>> Hi,
>>> Your customization worked for me. I copied and pasted this into a short
>>> customization (with one correction: your page-sequence-master was using
>>> body-odd instead of landscape-odd), and processed it with xsltproc and
>>> fop
>>> 0.95beta. When I put role="landscape" on chapter or appendix, they came
>>> out
>>> landscape in the PDF.
>>>
>>> You might take a peek inside your fo file to see if you are getting
>>> "landscape" on the page-sequence. That will tell you if something is
>>> going
>>> wrong with the stylesheet instead of fop.
>>>
>>> Bob Stayton
>>> Sagehill Enterprises
>>> [EMAIL PROTECTED]
>>>
>>>
>>> ----- Original Message -----
>>> From: <[EMAIL PROTECTED]>
>>> To: <[email protected]>
>>> Sent: Thursday, July 03, 2008 7:11 AM
>>> Subject: [docbook-apps] Rotate Region Body for Landscape Pages
>>>
>>>
>>> Hello List,
>>>
>>> tried to set up a customized page sequence to rotate a region body. This
>>> Guide
>>> (http://www.sagehill.net/docbookxsl/PageDesign.html#LandscapePageSequence)
>>> was very helpful. So here my customizations:
>>>
>>> <xsl:template name="select.user.pagemaster">
>>> <xsl:param name="element"/>
>>> <xsl:param name="pageclass"/>
>>> <xsl:param name="default-pagemaster"/>
>>>
>>> <xsl:choose>
>>> <xsl:when test="@role = 'landscape'">landscape</xsl:when>
>>> <xsl:otherwise>
>>> <xsl:value-of select="$default-pagemaster"/>
>>> </xsl:otherwise>
>>> </xsl:choose>
>>> </xsl:template>
>>>
>>> <xsl:template name="user.pagemasters">
>>> <fo:simple-page-master master-name="landscape-first"
>>> 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}">
>>> <xsl:if test="$axf.extensions != 0">
>>> <xsl:call-template name="axf-page-master-properties">
>>> <xsl:with-param name="page.master">body-first</xsl:with-param>
>>> </xsl:call-template>
>>> </xsl:if>
>>> <fo:region-body margin-bottom="{$body.margin.bottom}"
>>> margin-top="{$body.margin.top}"
>>> reference-orientation="90"
>>> column-gap="{$column.gap.body}"
>>> column-count="{$column.count.body}">
>>> </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="landscape-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}">
>>> <xsl:if test="$axf.extensions != 0">
>>> <xsl:call-template name="axf-page-master-properties">
>>> <xsl:with-param name="page.master">body-odd</xsl:with-param>
>>> </xsl:call-template>
>>> </xsl:if>
>>> <fo:region-body margin-bottom="{$body.margin.bottom}"
>>> margin-top="{$body.margin.top}"
>>> reference-orientation="90"
>>> column-gap="{$column.gap.body}"
>>> column-count="{$column.count.body}">
>>> </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="landscape-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}">
>>> <xsl:if test="$axf.extensions != 0">
>>> <xsl:call-template name="axf-page-master-properties">
>>> <xsl:with-param name="page.master">body-even</xsl:with-param>
>>> </xsl:call-template>
>>> </xsl:if>
>>> <fo:region-body margin-bottom="{$body.margin.bottom}"
>>> margin-top="{$body.margin.top}"
>>> reference-orientation="90"
>>> column-gap="{$column.gap.body}"
>>> column-count="{$column.count.body}">
>>> </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>
>>>
>>> <fo:page-sequence-master master-name="landscape">
>>> <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="landscape-first"
>>> page-position="first"/>
>>> <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">landscape-even</xsl:when>
>>> <xsl:otherwise>landscape-odd</xsl:otherwise>
>>> </xsl:choose>
>>> </xsl:attribute>
>>> </fo:conditional-page-master-reference>
>>> </fo:repeatable-page-master-alternatives>
>>> </fo:page-sequence-master>
>>> </xsl:template>
>>>
>>> Then I set in my Input-Docbook-XML-File the attribute role to landscape
>>> in
>>> the appendix tag like this
>>>
>>> <appendix role="landscape">
>>>
>>> Next step was to generate output PDF with FOP 0.95 beta under Win and
>>> docbook-xsl-1.74.0. Result: Nothing. The appendix and integrated
>>> informaltable are still in portrait format.
>>> What is wrong?
>>>
>>> The very simplest way is to set orient=land to informaltable and this
>>> will
>>> rotate on page but with overfloating the page border ... :-(
>>>
>>> <informaltable orient="land">
>>>
>>> Next step is using the PSMI from here
>>> http://www.cranesoftwrights.com/resources/psmi/index.htm. This changed
>>> last
>>> in 2003. Couldn't this included in the Docbook-XSL-Stylesheet?
>>>
>>> Any suggestions?
>>>
>>> Thanks.
>>> Best Regards,
>>> Lee
>>>
>>>
>>>
>>> __________________________________________________________
>>> Gesendet von Yahoo! Mail.
>>> Dem pfiffigeren Posteingang.
>>> http://de.overview.mail.yahoo.com
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>
>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>
>>>
>>>
>>
>> --
>> View this message in context:
>> http://www.nabble.com/Rotate-Region-Body-for-Landscape-Pages-tp18260338p18274560.html
>> Sent from the docbook apps mailing list archive at Nabble.com.
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>
>>
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
>
--
View this message in context:
http://www.nabble.com/Rotate-Region-Body-for-Landscape-Pages-tp18260338p18338317.html
Sent from the docbook apps mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]