CSS bietet zurzeit nicht die Möglichkeit, die Seiteninformationen (Dateiname, Datum, Uhrzeit) automatisch im Rendering-Prozess zu generieren. Daher sind diese Informationen automatisiert aktuell nur über
ein XSLT-PostProcess (+ CSS) oder
Java
in das PDF zu integrieren.
Andernfalls müssen die entsprechenden Angaben im CSS manuell notiert werden.
Beispiel 34. XSLT+CSS-Beispiel für die Generierung von Seiteninformationen
Datei 00-seiteninfos.xsl
im ConfigSetting im Unterorder print-css/xslt/
<?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" exclude-result-prefixes="xs" version="2.0"> <!-- Copy-Template --> <xsl:template match="node() | @*"> <xsl:copy> <xsl:apply-templates select="node() | @*"/> </xsl:copy> </xsl:template> <!-- Attribute für die PDF-Weiterverarbeitung --> <xsl:template match="projekt"> <xsl:copy> <xsl:copy-of select="@*"/> <!-- Angabe von Informationen für Druck-PDF (Seiteninformationen) --> <!-- Seiteninformation: Datum --> <xsl:attribute name="printcss-rendering-datum" select="current-date()"/> <!-- Seiteninformation: Uhrzeit --> <xsl:attribute name="printcss-rendering-uhrzeit" select="current-time()"/> <!-- Seiteninformation: Dateiname --> <xsl:attribute name="printcss-rendering-dateiname" select="//ausgabe[@id=$param_ausgabe]/kennung[@typ='isbn']"/> <xsl:apply-templates/> </xsl:copy> </xsl:template> </xsl:stylesheet>
Ergänzung im CSS-Stylesheet stylesheet.{less|css}
im ConfigSetting im Unterorder print-css/
@page { ... /* Seiteninformationen */ counter-increment: seitenzaehler; @bottom-left-corner { ... content: attr(printcss-rendering-dateiname) '_' counter(seitenzaehler); ... } @bottom-right-corner { ... content: attr(printcss-rendering-datum) '_' attr(printcss-rendering-uhrzeit); ... } ... }
Hinweis: Zur Sicherung einer durchgehenden Seitenzählung (notwendig, falls im Werk eine Zurücksetzung des globalen Seitenzählers "page-counter
" erfolgt) wird ein separater Counter für die Seitenzählung benötigt (z.B. seitenzaehler
, siehe CSS-Beispiel), der sich pro Seite um den Wert 1 erhöht.