[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: RE: [docbook-apps] Equation alignment
> -----Original Message-----
> From: Nelson, Dean
>
> Does anyone know how to align a MathML equation on the page?
> I am using the equation tag, but there is no horizontal
> alignment feature. In the past, I used graphics via the
> mediaobject and they are aligned in the imagedata. But when
> using MathML there is no such feature.
>
> Any ideas?
The current stylesheets are not very sophisticated. The MathML markup gets
through to the output, but that's about it.
The following customization adds support for @align and @valign on imagedata
(the original template is in math.xsl):
<xsl:template match="mml:math"
xmlns:mml="http://www.w3.org/1998/Math/MathML">
<xsl:choose>
<!-- * If user is using passivetex, we don't wrap the output in -->
<!-- * fo:instream-foreign-object (which passivetex doesn't support).
-->
<xsl:when test="not($passivetex.extensions = 0)">
<xsl:copy>
<xsl:copy-of select="@*"/>
<xsl:apply-templates/>
</xsl:copy>
</xsl:when>
<xsl:otherwise>
<fo:instream-foreign-object>
<!-- Support for two imagedata attributes -->
<xsl:if test="../@align">
<xsl:attribute name="text-align">
<xsl:value-of select="../@align"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="../@valign">
<xsl:attribute name="display-align">
<xsl:choose>
<xsl:when test="../@valign = 'top'">before</xsl:when>
<xsl:when test="../@valign = 'middle'">center</xsl:when>
<xsl:when test="../@valign = 'bottom'">after</xsl:when>
<xsl:otherwise>auto</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
</xsl:if>
<!-- End of customization -->
<xsl:copy>
<xsl:copy-of select="@*"/>
<xsl:apply-templates/>
</xsl:copy>
</fo:instream-foreign-object>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
I'm not sure if this is the way to go in the long run. I guess that it would
be better if the process.image template in graphics.xsl could be reworked so
that it also supports imagedata attributes for MathML (and SVG).
/Mauritz
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]