1

假设我想将页码“01”打印为两个单独的数字 0 和 1,从 1 到 9 0X-> 01,02,03.... 从 10 到 99 10,11,12

<fo:table-cell xsl:use-attribute-sets="TableCellBorder">
    <fo:block>
      <xsl:value-of select="substring(<fo:page-number/>, 1, 1)"/> //0 or first page-number digit
    </fo:block>
</fo:table-cell>
<fo:table-cell xsl:use-attribute-sets="TableCellBorder">
   <fo:block>
      <xsl:value-of select="substring(<fo:page-number/>, 2, 1)"/>//second page-number digit
    </fo:block>
</fo:table-cell>

任何想法如何做到这一点?

4

2 回答 2

1
<fo:page-sequence master-reference="mymaster" format="01">
  ...
    <fo:page-number/>
  ...
</fo:page-sequence>

描述here,唯一的诀窍是找出放置它的位置。

抱歉,仅使用 XEP 进行了测试;不知道 FOP 是否支持它。

升级版。您是否考虑添加“前导零”字样以使文章更易于搜索?

于 2012-05-11T21:54:06.200 回答
0

这是不可能的。

<fo:page-number/>是一个 XSL-FO 构造。在 XSL-FO 处理器运行之前,它不会获得值。它不能在生成 XSL-FO 标记的 XSLT 样式表中进行操作。

于 2012-05-11T14:49:43.570 回答