Я пытаюсь найти способ определить, является ли сгенерированная страница нечетной или даже в шаблоне для выравнивания содержимого влево/вправо. Например, блок текста с символом рядом с ним. Символ остался бы оправданным на одной странице, и право было бы оправдано на следующем.XSL-FO: Ищите инструкцию If для определения нечетной или четной страницы.
Я не считаю, что проверка fo: page-number возможен. И я не могу понять способ, который будет работать с region-start/region-end, потому что символ не будет совпадать с соответствующим блоком текста в body-body.
<fo:layout-master-set>
<fo:simple-page-master master-name="EvenPage">
<fo:region-body />
</fo:simple-page-master>
<fo:simple-page-master master-name="OddPage">
<fo:region-body />
</fo:simple-page-master>
<fo:page-sequence-master master-name="Content">
<fo:repeatable-page-master-alternatives>
<fo:conditional-page-master-reference master-reference="OddPage" odd-or-even="odd"/>
<fo:conditional-page-master-reference master-reference="EvenPage" odd-or-even="even"/>
</fo:repeatable-page-master-alternatives>
</fo:page-sequence-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="Content">
<fo:flow>
<xsl:apply-templates select="*"/>
</fo:flow>
</fo:page-sequence>
Я подтверждаю, что FOP 2.1 делает ** не ** поддерживает 'float =" вне "' (или '" внутри ''). – lfurini