如何在XSL-FO中匹配<sup> value </ sup>

Hed*_*ips 0 xpath xsl-fo

我正在使用xsl-fo并尝试在 <sup>

例如,我想使2为上标。

<sup id="FNB-0002"><xref href="#Comp_CLJONLINE_CLJ_2010_04_2/FN-0002">2</xref></sup>

我正在使用以下代码,我认为应该可以。

 <xsl:template match="sup[@id='*']">    
        <fo:inline font-size="24pt" font-weight="bold" text-indent="2em" text-transform="uppercase" >
            <xsl:apply-templates/>
            </fo:inline>
    </xsl:template>
Run Code Online (Sandbox Code Playgroud)

但是我所应用的样式均未得到认可。我开始认为这是因为2位于外部参照中,而xsl-fo则忽略了它。

谁能给我一些指导,以迎合这些风格和风格

谢谢,

Dan*_*ley 5

此模板与您的<sup>元素不匹配的原因是,您正在将a <sup>id具有值的属性进行匹配*

如果要匹配<sup>具有id属性的元素,请将匹配项更改为此:

sup[@id]
Run Code Online (Sandbox Code Playgroud)

另外,请尝试使用vertical-align="super"上标文本。

例:

<fo:inline vertical-align="super" font-size="8pt">
    <xsl:apply-templates/>
</fo:inline>
Run Code Online (Sandbox Code Playgroud)