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] Rotate Region Body for Landscape Pages



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
> bobs@sagehill.net
> 
> 
> ----- Original Message ----- 
> From: "Leeloo5e" <leeloo5e79-docbook@yahoo.de>
> To: <docbook-apps@lists.oasis-open.org>
> 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
>>> bobs@sagehill.net
>>>
>>>
>>> ----- Original Message ----- 
>>> From: <leeloo5e79-docbook@yahoo.de>
>>> To: <docbook-apps@lists.oasis-open.org>
>>> 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: docbook-apps-unsubscribe@lists.oasis-open.org
>>> For additional commands, e-mail: docbook-apps-help@lists.oasis-open.org
>>>
>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: docbook-apps-unsubscribe@lists.oasis-open.org
>>> For additional commands, e-mail: docbook-apps-help@lists.oasis-open.org
>>>
>>>
>>>
>>
>> -- 
>> 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: docbook-apps-unsubscribe@lists.oasis-open.org
>> For additional commands, e-mail: docbook-apps-help@lists.oasis-open.org
>>
> 
>>
>> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: docbook-apps-unsubscribe@lists.oasis-open.org
> For additional commands, e-mail: docbook-apps-help@lists.oasis-open.org
> 
> 
> 

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



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