Как сохранить строки вместе на странице xsl fo?

#xslt-1.0 #xsl-fo

#xslt-1.0 #xsl-fo

Вопрос:

Я хочу, чтобы код и его описание отображались на одной странице. Если описание длинное, то код и описание должны отображаться на следующей странице.

 <xsl:template match="LineOfTastingNote">
<fo:table-row font-family="Avenir" keep-together.within-page="always" >
  
  <fo:table-cell padding-bottom="0.5mm" padding-left="0.1cm" >
    <fo:block font-size="8pt" text-align="left" font-weight="bold">
   <xsl:value-of select="Code" /> 
    </fo:block>
  </fo:table-cell>
  
</fo:table-row>

 <fo:table-row font-family="Avenir" >
  
  
  <fo:table-cell padding-left="0.1cm" padding-bottom="0.5mm" padding-right="8cm" >
    <fo:block font-size="8pt" text-align="left">
    <xsl:value-of select="Description" /> 
    </fo:block>
  </fo:table-cell>

</fo:table-row>



 </xsl:template>
  

Пример:

 product1
Apple Cider vineger1
product2
Apple Cider vineger2
*
*
*

productlastofpage
-------------------------------end of page 1 
-------------------------------start of page 2
Apple Cider vinegerend


 -------------------------------endof page 2
  

Я хочу, чтобы код productlastofpage отображался на странице 2 с описанием «Apple Cider vinegerend», попробовал keep-together.within-page=»всегда», но безуспешно.

Ответ №1:

Вы хотите keep-with-next.within-page (см. https://www.w3.org/TR/xsl11/#keep-with-next ), нет keep-together.within-page .

Вы keep-together.within-page="always" просто сохранили эту строку таблицы вместе на одной странице и ничего не сказали о следующей строке.

Есть также keep-with-previous (в том числе keep-with-previous.within-page ).