summaryrefslogtreecommitdiff
path: root/docs/docbook/xslt/db2latex/figure.mod.xsl
blob: 823877aa17f0e8b662a7c3ad906e37996cd8745b (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
<?xml version='1.0'?>
<!--############################################################################# 
|- #############################################################################
|														
|   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">
	    </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>