1

我正在尝试编写一个非常简单的东西,它被 xsl-fo 内联和块级元素大大复杂化。

这是 XML 的示例:

<quote-block open="&quot;" close="&quot;">
   <quote-para>text...</quote-para>
   <list>
      <item>...</item>
      <item>...</item>
   </list>
   <quote-paragraph>
      <para>...</para>
      <list>
         <item>...</item>
      </list>
   </quote-paragraph>
</quote-block>

属性 open 和 close 应该驱动开始和结束引号出现在封闭的内容周围。

我遇到的问题是,因为 fo 中的列表是块级项目,所以我无法让结束引号内联出现在内容的末尾。它目前在下一行的开头结束。

我可以通过向每个可能的项目添加大量代码来确定它是否是引号中的最后一个元素,然后显示右引号来解决这个问题。但事实证明,当它出错时调试起来很复杂,因为引用中的元素可以在任何级别并且嵌套多次。

有没有人对如何解决这个问题有任何想法?

谢谢

4

1 回答 1

0

换个角度攻击这个怎么样?也许省略结束引号符号,尝试对开头引号进行样式化(更大,彩色等)和/或简单地为块的背景/边框着色以将其区分为引号 - 就像人们在这些新的时尚博客上所做的那样?

我知道它不是一个完整的问题解决方案,但是虽然 FO 是恕我直言的一个了不起的工具,但引擎实现和规范仍处于起步阶段。当涉及到 FO 问题时,我发现切换路线比尝试“翻墙”更容易,通常既节省时间又省心!;)

于 2009-10-31T00:46:53.047 回答