带有不同字体大小的下划线块元素,没有中断的行

时间:2013-07-02 11:40:01

标签: xsl-fo apache-fop

我正在尝试为包含文本的block元素加下划线。该块具有font-size属性,block中的文字由inline元素包围,该元素具有不同的font-size属性。

有没有办法确保外部块的text-decoration="underline"产生的直线是所有块元素上的直线(没有任何“间隙” - 请参见附图)用font-size改变它的位置?

我的代码:

<fo:block font-size="14pt" text-decoration="underline">
    Some text
    <fo:inline font-size="10pt"> text with a smaller font size </fo:inline>
    Another text
</fo:block>

我的结果:

Problem with undelined block with different font sizes

提前致谢!

1 个答案:

答案 0 :(得分:8)

我有一个供应商的两个版本的XSL-FO引擎,最新版本渲染了一个没有间隙的普通下划线,而旧版本渲染了你用FOP看到的内容。所以它似乎依赖于实现。

但是你可以通过有选择地使用边框而不是依赖于实现来模仿你想要的外观:

  <block font-size="14pt">
    <inline border-after-width="1pt" border-after-style="solid">
Some text
<inline font-size="10pt"> text with a smaller font size </inline>
Another text
    </inline>
   </block>

这个模仿是否适用于FOP,我不知道我不使用FOP。