Par défaut, les paramètres des feuilles de style docbook-xsl donnent le strict minimum en matière graphique. Dans de nombreux cas, il faut modifier les paramètres pour améliorer un peu le rendu.
Pour personnaliser les feuilles de style, il y a la possibilité de modifier directement les feuilles de style fournies mais cela ne permet pas de migrer aisément les modifications lors de l'installation d'une nouvelle version; le plus simple reste donc d'ajouter une feuille de style supplémentaire s'occupant de paramétrer les modifications.
pour cela, créons une feuille de style vide :
<?xml version='1.0' encoding="UTF-8"?>
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:fo="http://www.w3.org/1999/XSL/Format"
version="1.0">
</xsl:stylesheet>
Pour la relier aux feuilles de style standard, relions-la aux autres avec un import :
<xsl:import href="./docbook-xsl-1.75.1/fo/docbook.xsl"/>
pour la relier aux fauilles de style XSL-FO. ou bien :
<xsl:import href="docbook-xsl-1.75.1/xhtml-1_1/docbook.xsl"/>
pour la relier au feuilles de styles générant du xhtml 1.1
Paramétrons maintenant les feuilles de style en surchargeant les paramètres qui conviennent en fonction du type de fichier de sortie attendu.
Dans le cas du HTML, nous pouvons modifier les paramètres suivants.
<xsl:param name="l10n.gentext.language">fr</xsl:param>
Pour un CSS nommé docbook.css.
<xsl:param name="html.stylesheet">docbook.css</xsl:param>
Le chemin de référence se fait par rapport au document HTML produit. C'est lui qui appellera le CSS.
<xsl:param name="toc.section.depth">3</xsl:param>
Pour l'insertion automatique des images pour les notes, remarques, avertissement :
<xsl:param name="admon.graphics" select="1"/>
<xsl:param name="admon.graphics.path">icons/</xsl:param>
<xsl:param name="admon.graphics.extension">.png</xsl:param>
Les icônes doivent se situer dans le répertoire icons, avec l'extension .png et pour nom le nom de la zone : note.png, warning.png, etc.
Pour modifier le format de la page (A3, A4, US letter, etc.) :
<xsl:param name="paper.type" select="'A4'"/>
Et l'orientation (portrait / landscape) :
<xsl:param name="page.orientation">landscape</xsl:param>
et les marges :
<xsl:param name="page.height.portrait">9in</xsl:param>
<xsl:param name="page.width.portrait">7in</xsl:param>
<xsl:param name="page.margin.inner">0.75in</xsl:param>
<xsl:param name="page.margin.outer">0.50in</xsl:param>
<xsl:param name="page.margin.top">0.17in</xsl:param>
<xsl:param name="page.margin.bottom">0.50in</xsl:param>
<xsl:param name="region.before.extent">0.17in</xsl:param>
<xsl:param name="body.margin.top">0.33in</xsl:param>
<xsl:param name="region.after.extent">0.35in</xsl:param>
<xsl:param name="body.margin.bottom">0.65in</xsl:param>
<xsl:param name="double.sided">1</xsl:param>
<xsl:param name="body.start.indent">-0.1in</xsl:param>
<xsl:param name="draft.watermark.image">draft.png</xsl:param>
Le mode brouillon est activé par l'attribut status="draft" dans la balise racine (book, article, etc.).
Pour le corps de texte normal :
<xsl:param name="body.font.family">Arial</xsl:param>
Pour le titre de section :
<xsl:attribute-set name="section.title.properties">
<xsl:attribute name="font-family">Arial</xsl:attribute>
<xsl:attribute name="font-weight">bold</xsl:attribute>
<xsl:attribute name="border-bottom-style">solid</xsl:attribute>
</xsl:attribute-set>
Pour le titre de chapitre :
<xsl:attribute-set name="chapter.title.properties">
<xsl:attribute name="font-family">Arial</xsl:attribute>
<xsl:attribute name="font-weight">bold</xsl:attribute>
<xsl:attribute name="border-bottom-style">solid</xsl:attribute>
<xsl:attribute name="background-color">silver</xsl:attribute>
</xsl:attribute-set>
Pour l'en-tête :
<xsl:attribute-set name="header.content.properties">
<xsl:attribute name="font-family">Helvetica</xsl:attribute>
<xsl:attribute name="font-size">9pt</xsl:attribute>
</xsl:attribute-set>