← Prev in month
← Prev in thread
Changing line spacing in variablelists
Dear friends,
I want to remove all line spacing for list items in the PDF output of a Docbook 4.5 document, using Saxon6.5.5 and Apache FOP. I've been able to do this successfully, except for one line in variablelists. The spacing between the term and listitem in a variablelist remains. I have made a number of attempts in my custom stylesheet, but no luck.
For example, one part of my source document looks like this:
<varlistentry>
<term><parameter moreinfo="none">modbus</parameter></term>
<listitem>
<para>The modbus instance pointer. Always enter <literal
moreinfo="none">modbus</literal> for this
parameter</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter moreinfo="none">slaveid</parameter></term>
<listitem>
<para>The slave ID for this point. An entry of zero (<literal
moreinfo="none">0</literal>) will use the default slave
ID for the Modbus connection.</para>
</listitem>
</varlistentry>
...
My custom stylesheet currently contains this:
<xsl:attribute-set name="list.item.spacing">
<xsl:attribute name="space-before.optimum">0em</xsl:attribute>
<xsl:attribute name="space-before.minimum">0em</xsl:attribute>
<xsl:attribute name="space-before.maximum">0em</xsl:attribute>
<xsl:attribute name="space-after.optimum">0em</xsl:attribute>
<xsl:attribute name="space-after.minimum">0em</xsl:attribute>
<xsl:attribute name="space-after.maximum">0em</xsl:attribute>
</xsl:attribute-set>
<xsl:attribute-set name="list.block.spacing">
<xsl:attribute name="padding-top">0em</xsl:attribute>
<xsl:attribute name="padding-bottom">0em</xsl:attribute>
<xsl:attribute name="space-before.optimum">0em</xsl:attribute>
<xsl:attribute name="space-before.minimum">0em</xsl:attribute>
<xsl:attribute name="space-before.maximum">0em</xsl:attribute>
<xsl:attribute name="space-after.optimum">0em</xsl:attribute>
<xsl:attribute name="space-after.minimum">0em</xsl:attribute>
<xsl:attribute name="space-after.maximum">0em</xsl:attribute>
</xsl:attribute-set>
<xsl:template match="d:varlistentry" mode="vl.as.blocks">
<xsl:variable name="id">
<xsl:call-template name="object.id"/>
</xsl:variable>
<fo:block id="{$id}" xsl:use-attribute-sets="variablelist.term.properties
list.item.spacing"
keep-together.within-column="always"
keep-with-next.within-column="always"
space-after.minimum="0pt"
space-after.maximum="0pt"
space-after.optimum="0pt"
space-after.precedence="3"
padding-top="0pt"
padding-bottom="0pt"
>
<xsl:apply-templates select="d:term"/>
</fo:block>
<fo:block
space-before.minimum="0pt"
space-before.maximum="0pt"
space-before.optimum="0pt"
space-before.precedence="3"
padding-top="0pt"
padding-bottom="0pt"
>
<xsl:attribute name="margin-{$direction.align.start}">0.25in</xsl:attribute>
<xsl:apply-templates select="d:listitem"/>
</fo:block>
</xsl:template>
My output is in the attached screenshot, VariableListSpacing.jpg. As you can see, all of the line spacing is removed, except for the area between the term and the listitem. Can anyone help with this?
Best regards,
Bob
Bob McIlvride Communications Manager
Cogent Real-Time Systems Inc., a Skkynet company
T 1 905 702 7851 ext 103
cogent.ca
Attachment:
VariableListSpacing.jpg
Description: JPEG image
← Prev in month
← Prev in thread