| #!/bin/sh |
| # |
| # SPDX-License-Identifier: CC-BY-2.0-UK |
| # |
| |
| if [ -z "$1" -o -z "$2" ]; then |
| echo "usage: [-v] $0 <docbook file> <templatedir>" |
| echo |
| echo "*NOTE* you need xsltproc, fop and nwalsh docbook stylesheets" |
| echo " installed for this to work!" |
| echo |
| exit 0 |
| fi |
| |
| FO=`echo $1 | sed s/.xml/.fo/` || exit 1 |
| PDF=`echo $1 | sed s/.xml/.pdf/` || exit 1 |
| TEMPLATEDIR=$2 |
| |
| ## |
| # These URI should be rewritten by your distribution's xml catalog to |
| # match your localy installed XSL stylesheets. |
| XSL_BASE_URI="http://docbook.sourceforge.net/release/xsl/current" |
| |
| # Creates a temporary XSL stylesheet based on titlepage.xsl |
| xsltproc -o /tmp/titlepage.xsl \ |
| --xinclude \ |
| $XSL_BASE_URI/template/titlepage.xsl \ |
| $TEMPLATEDIR/titlepage.templates.xml || exit 1 |
| |
| # Creates the file needed for FOP |
| xsltproc --xinclude \ |
| --stringparam hyphenate false \ |
| --stringparam formal.title.placement "figure after" \ |
| --stringparam ulink.show 1 \ |
| --stringparam body.font.master 9 \ |
| --stringparam title.font.master 11 \ |
| --stringparam draft.watermark.image "$TEMPLATEDIR/draft.png" \ |
| --stringparam chapter.autolabel 1 \ |
| --stringparam appendix.autolabel A \ |
| --stringparam section.autolabel 1 \ |
| --stringparam section.label.includes.component.label 1 \ |
| --output $FO \ |
| $TEMPLATEDIR/poky-db-pdf.xsl \ |
| $1 || exit 1 |
| |
| # Invokes the Java version of FOP. Uses the additional configuration file common/fop-config.xml |
| fop -c $TEMPLATEDIR/fop-config.xml -fo $FO -pdf $PDF || exit 1 |
| |
| rm -f $FO |
| rm -f /tmp/titlepage.xsl |
| |
| echo |
| echo " #### Success! $PDF ready. ####" |
| echo |