diff options
-rw-r--r-- | doc/src/sgml/Makefile | 1 | ||||
-rw-r--r-- | doc/src/sgml/stylesheet-common.xsl | 22 | ||||
-rw-r--r-- | doc/src/sgml/stylesheet.xsl | 6 |
3 files changed, 28 insertions, 1 deletions
diff --git a/doc/src/sgml/Makefile b/doc/src/sgml/Makefile index 3c4aa6bebe3..11ecdaf717e 100644 --- a/doc/src/sgml/Makefile +++ b/doc/src/sgml/Makefile @@ -144,7 +144,6 @@ html: html-stamp html-stamp: stylesheet.xsl postgres-full.xml $(ALL_IMAGES) $(XSLTPROC) $(XMLINCLUDE) $(XSLTPROCFLAGS) $(XSLTPROC_HTML_FLAGS) $(wordlist 1,2,$^) - cp $(ALL_IMAGES) html/ cp $(srcdir)/stylesheet.css html/ touch $@ diff --git a/doc/src/sgml/stylesheet-common.xsl b/doc/src/sgml/stylesheet-common.xsl index 761484c7fef..d2928f86eb7 100644 --- a/doc/src/sgml/stylesheet-common.xsl +++ b/doc/src/sgml/stylesheet-common.xsl @@ -101,4 +101,26 @@ <xsl:apply-templates select="." mode="xref"/> </xsl:template> + +<!-- + Support for copying images to the output directory, so the output is self + contained. +--> +<xsl:template name="write-image"> + <xsl:variable name="input_filename"> + <xsl:value-of select="imagedata/@fileref"/> + </xsl:variable> + + <!-- references images directly, without images/ --> + <xsl:variable name="output_filename"> + <xsl:value-of select="concat($chunk.base.dir, substring-after($input_filename, '/'))"/> + </xsl:variable> + + <xsl:call-template name="write.chunk"> + <xsl:with-param name="filename" select="$output_filename"/> + <xsl:with-param name="content" select="document($input_filename)"/> + </xsl:call-template> +</xsl:template> + + </xsl:stylesheet> diff --git a/doc/src/sgml/stylesheet.xsl b/doc/src/sgml/stylesheet.xsl index b6141303abd..c492dc38e54 100644 --- a/doc/src/sgml/stylesheet.xsl +++ b/doc/src/sgml/stylesheet.xsl @@ -29,6 +29,12 @@ </xsl:param> +<!-- copy images to the output directory, so the output is self contained --> +<xsl:template match="imageobject"> + <xsl:call-template name="write-image"/> + <xsl:apply-templates select="imagedata"/> +</xsl:template> + <!-- strip directory name from image filerefs --> <xsl:template match="imagedata/@fileref"> <xsl:value-of select="substring-after(., '/')"/> |