summaryrefslogtreecommitdiff
path: root/docs/docbook/xslt/db2latex/figure.mod.xsl
blob: 3269bb5cfafec93d0a124a6cac2e8b01050a4ba8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
<?xml version='1.0'?>
<!--############################################################################# 
|	$Id: figure.mod.xsl,v 1.1.2.3 2003/08/12 18:22:39 jelmer Exp $
|- #############################################################################
|	$Author: jelmer $												
|														
|   PURPOSE: Template for figure tag.
+ ############################################################################## -->

<xsl:stylesheet 
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:doc="http://nwalsh.com/xsl/documentation/1.0"
    exclude-result-prefixes="doc" version='1.0'>

    <!--############################################################################# -->
    <!-- DOCUMENTATION                                                                -->
    <doc:reference id="figure" xmlns="">
	<referenceinfo>
	    <releaseinfo role="meta">
		$Id: figure.mod.xsl,v 1.1.2.3 2003/08/12 18:22:39 jelmer Exp $
	    </releaseinfo>
	<authorgroup>
	    <author> <firstname>Ramon</firstname> <surname>Casellas</surname> </author>
	    <author> <firstname>James</firstname> <surname>Devenish</surname> </author>
	</authorgroup>
	    <copyright>
		<year>2000</year> <year>2001</year> <year>2002</year> <year>2003</year>
		<holder>Ramon Casellas</holder>
	    </copyright>
	</referenceinfo>

	<title>Figures and InformalFigures <filename>figure.mod.xsl</filename></title>
	<partintro>
	    <section><title>Introduction</title>
		<para></para>
	    </section>
	</partintro>
    </doc:reference>
    <!--############################################################################# -->




    <!--############################################################################# -->
    <doc:template match="figure|informalfigure" xmlns="">
	<refpurpose> XSL template for figure|informalfigure  </refpurpose>
	<refdescription>
	    <para>Outputs <literal>\begin{figure}</literal>,
		applies templates and outputs <literal>\end{figure}</literal>. </para>
	    <formalpara><title>Remarks and Bugs</title>
		<itemizedlist>
			<listitem><para>The <literal>figure.title</literal> can be typset in italics by specifying <literal>$latex.figure.title.style</literal> (<literal>\itshape</literal> would be common).</para></listitem>
			<listitem><para>If a <literal>figure.mediaobject.caption</literal> exists, it will be typeset after the <literal>figure.title</literal> (but only if there is a single <literal>figure.mediaobject.caption</literal>).</para></listitem>
		</itemizedlist>
	    </formalpara>
	</refdescription>
    </doc:template>
    <!--############################################################################# -->


<!-- Auxiliary template to output a figure caption.-->
<xsl:template name="aux.figure.caption">
<xsl:text>\caption{{</xsl:text>
<xsl:value-of select="$latex.figure.title.style"/>
<xsl:text>{</xsl:text>
<xsl:apply-templates select="title"/>
<xsl:text>}}</xsl:text>
<xsl:if test="count(child::mediaobject/caption)=1">
	<xsl:text>. </xsl:text>
	<xsl:apply-templates select="mediaobject/caption" />
</xsl:if>
<xsl:text>}&#10;</xsl:text>
</xsl:template>

<xsl:template match="figure|informalfigure">
	<xsl:variable name="placement">
		<xsl:call-template name="generate.formal.title.placement">
			<xsl:with-param name="object" select="local-name(.)" />
		</xsl:call-template>
	</xsl:variable>
	<xsl:call-template name="map.begin"/>
	<xsl:if test="$placement='before'">
		<xsl:text>\captionswapskip{}</xsl:text>
		<xsl:call-template name="aux.figure.caption" />
		<xsl:text>\captionswapskip{}</xsl:text>
	</xsl:if>
	<xsl:apply-templates select="*[name(.) != 'title']"/>
	<xsl:if test="$placement!='before'">
		<xsl:call-template name="aux.figure.caption" />
	</xsl:if>
	<xsl:call-template name="map.end"/>
</xsl:template>



    <!--############################################################################# -->
	<!--
    <doc:template match="figure[programlisting]" xmlns="">
	<refpurpose> XSL template for programlisting within a figure </refpurpose>
	<refdescription>
	    <para>Outputs <literal>\begin{figure}</literal>,
		applies templates and outputs <literal>\end{abstract}</literal>. </para>
	    <formalpara><title>Remarks and Bugs</title>
		<itemizedlist>
		</itemizedlist>
	    </formalpara>
	</refdescription>
    </doc:template>
	-->
    <!--############################################################################# -->

	<!--
    <xsl:template match="figure[programlisting]">
	<xsl:call-template name="map.begin">
	    <xsl:with-param name="keyword" select="programlisting"/>
	</xsl:call-template>
	<xsl:apply-templates />
	<xsl:call-template name="map.end">
	    <xsl:with-param name="keyword" select="programlisting"/>
	</xsl:call-template>
    </xsl:template>
	-->

    <xsl:template match="figure/title">
	<xsl:apply-templates/>
	</xsl:template>

    <xsl:template match="informalfigure/title">
	</xsl:template>
</xsl:stylesheet>