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] I'm want to indent only 'section/para', not 'section/para/programlisting'


Hi,
That  problem looks like a bug in FOP.  Can you process your FO output with 
another XSL-FO processor to see if that corrects the problem?

Bob Stayton
Sagehill Enterprises
bobs@sagehill.net


----- Original Message ----- 
From: "Dongsheng Song" <dongsheng.song@gmail.com>
To: "Bob Stayton" <bobs@sagehill.net>
Cc: "DocBook Apps" <docbook-apps@lists.oasis-open.org>
Sent: Tuesday, December 30, 2008 12:04 AM
Subject: Re: [docbook-apps] I'm want to indent only 'section/para', not 
'section/para/programlisting'


> Thank you, I make a chinese copy[2] of 'DocBook 5.0: The Definitive 
> Guide'[1],
> It's fine.
>
> But some page[3] layout is broken, could you give me some advice?
>
> [1] http://i18n-zh.googlecode.com/files/defguide5-r8198-4cad.pdf
> [2] http://i18n-zh.googlecode.com/files/defguide5-r8198-4cad-zh.pdf
> [3] http://i18n-zh.googlecode.com/files/defguide5-r8198-4cad-zh.png
>
> 2008/12/30 Bob Stayton <bobs@sagehill.net>:
>> The problem is that the XSL-FO property text-indent is an inherited
>> property.  That means it is applied to any fo:block elements contained in
>> the para's fo:block.  That's why the fo:block containing your 
>> programlisting
>> text also has that property, even though it doesn't show in the FO file. 
>> The
>> other complication is that para allows both inline and block elements, as
>> well as text, so it can be difficult to sort out how to apply a solution 
>> to
>> subelements of para.
>>
>> You might try this oversimplified solution using fo:wrapper to turn off 
>> the
>> text-indent for all subelements:
>>
>> <xsl:template match="section/para/*">
>>   <fo:wrapper text-indent="0pt">
>>     <xsl:apply-imports/>
>>   </fo:wrapper>
>> </xsl:template>
>>
>> This wraps any subelement output in an fo:wrapper to reset the 
>> text-indent
>> property. It then uses xsl:apply-imports to apply the stock DocBook 
>> template
>> for each subelement.  However, if you have a customization of one of 
>> those
>> subelements, then the apply-imports will ignore that customization and go
>> back to the original stock template.  So any customized templates for 
>> such
>> elements must also have this solution.  Not pretty, and there are 
>> probably
>> situations where it won't work properly.
>>
>> Bob Stayton
>> Sagehill Enterprises
>> bobs@sagehill.net
>>
>>
>> ----- Original Message ----- From: "Dongsheng Song"
>> <dongsheng.song@gmail.com>
>> To: "DocBook Apps" <docbook-apps@lists.oasis-open.org>
>> Sent: Monday, December 29, 2008 1:34 AM
>> Subject: [docbook-apps] I'm want to indent only 'section/para', not
>> 'section/para/programlisting'
>>
>>
>>> When I use custom xsl to indent 'section/para':
>>>
>>>  <xsl:attribute-set name="standard.para.spacing"
>>> use-attribute-sets="normal.para.spacing">
>>>   <xsl:attribute name="text-indent">24pt</xsl:attribute>
>>>  </xsl:attribute-set>
>>>
>>>  <xsl:template match="section/para">
>>>   <fo:block xsl:use-attribute-sets="standard.para.spacing">
>>>     <xsl:call-template name="anchor"/>
>>>     <xsl:apply-templates/>
>>>   </fo:block>
>>>  </xsl:template>
>>>
>>> But 'section/para/programlisting' indent too, how can I avoid it indent
>>> any
>>> subelements of 'section/para'?
>>>
>>> Thanks,
>>>
>>> Dongsheng Song
>>>
>>> ---------------------------------------------------------------------
>>> 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
>
>
> 



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