That's great - I didn't realise that the parameters could be
dynamically configured in that way (but of course they can be,
thinking about it) - that will make life very easy indeed.
Thanks,
Geraint North
Principal Engineer
Transitive
On 12 Dec 2007, at 19:29, Thomas Schraitle wrote:
Hi,
On Mittwoch, 12. Dezember 2007, Geraint North wrote:
I've got a few situations where I'd like to set some attributes based
on some top-level properties of my DocBook Book. For example:
- If the <book>'s lang is "ja", use a set of Japanese fonts, rather
than the defaults.
That's pretty easy. You have to create a customization layer as
shown in
[1] and insert the following parameter:
<xsl:param name="body.font.family">
<xsl:choose>
<xsl:when test="/book/@lang='ja'">
<xsl:text><!-- Insert your fonts here --></xsl:text>
</xsl:when>
<xsl:otherwise>serif</xsl:otherwise>
</xsl:choose>
</xsl:param>
Probably you need to configure the other parameters like
sans.font.family
as well (see [2]).
- If the confidentiality level of the document (my own tag) is
"Confidential", print the chapter titles in black rather than blue.
For this check I need to know where your confidentiality element is
allowed.
I am not 100% sure, maybe there are better methods, but you can
change the
attribute set chapter.titlepage.recto.style (untested):
<xsl:attribute-set name="chapter.titlepage.recto.style">
<xsl:attribute name="color">
<xsl:choose>
<!-- Adapt the XPath in test to your needs -->
<xsl:when test="/*/confidentiality = 'Confidental'">
<xsl:text>black</xsl:text>
</xsl:when>
<xsl:otherwise>blue</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
</xsl:attribute-set>
Insert it into your customization layer too. :)
Hope that helps,
Tom
---------
[1]
http://www.sagehill.net/docbookxsl/
CustomMethods.html#CustomizationLayer
[2] http://docbook.sourceforge.net/release/xsl/current/doc/fo/
fonts.html
--
Thomas Schraitle
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
open.org
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]