On 6/25/24 13:24, Frank Erlbacher wrote:
I'd like to get my footer as close as possible to the lower bound of the page. Therefore I set the margin-bottom to 0. But it doesn't work. In my rendered RTF-Result the distance between my footer row and the lower bound is round about 1.5cm.
If I render it with apache fop to PDF, all is fine.

<fo:layout-master-set>
  <fo:simple-page-master margin-left="2.499431cm" master-name="spm37" page-height="29.7004cm" margin-top="1.25cm" *margin-bottom="0cm*"  page-width="21.0009cm" margin-right="2.499431cm">
     <fo:region-body margin-top="1.25cm" margin-bottom="2cm"/>
    <fo:region-after extent="2cm" overflow="visible" display-align="after" precedence="true"/>
   </fo:simple-page-master>
</fo:layout-master-set>

<fo:page-sequence master-reference="spm37" language="de" hyphenate="false">
   <fo:static-content flow-name="xsl-region-after">
   <fo:block font-size="11pt" language="de" line-height="12.65pt" font-family="Calibri" orphans="2" widows="2">That is my footer</fo:block>
</fo:static-content>
...

How can I fix this problem?


Unlike Apache FOP, XMLmind XSL-FO Converter (XFC for short) has no way to really support the margins of fo:simple-page-master and fo:region-body.

Therefore, XFC merely translates these XSL-FO margins to what is supported by the RTF format, that is, the top margin of the page and the bottom margin of the page.

In order to do that, XFC ADDS fo:simple-page-master/@margin-top and fo:region-body/@margin-top to specify the RTF top margin of the page. It adds fo:simple-page-master/@margin-bottom and fo:region-body/@margin-bottom to specify the RTF bottom margin of the page.

Therefore, what follows should give you the results you want:
---
<fo:simple-page-master margin-left="2.499431cm" master-name="spm37" page-height="29.7004cm" margin-top="1.25cm" margin-bottom="0cm" page-width="21.0009cm" margin-right="2.499431cm">
   <fo:region-body margin-top="1.25cm" margin-bottom="0cm"/>
<fo:region-after extent="2cm" overflow="visible" display-align="after" precedence="true"/>
  </fo:simple-page-master>
---

Unfortunately, when investigating this issue, I've found a bug which, for now, prevents you from specifying margin-bottom="0cm" twice.

The workwaround is to specify a very small value, e.g. margin-bottom="0.05cm", like below (attached .fo file):
---
<fo:simple-page-master margin-left="2.499431cm" master-name="spm37" page-height="29.7004cm" margin-top="1.25cm" margin-bottom="0.05cm" page-width="21.0009cm" margin-right="2.499431cm">
   <fo:region-body margin-top="1.25cm" margin-bottom="0.05cm"/>
<fo:region-after extent="2cm" overflow="visible" display-align="after" precedence="true"/>
  </fo:simple-page-master>
---

This should give you the results very close to what you want. See attached screenshot.
<?xml version="1.0" encoding="UTF-8" ?>

<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format";>
 
 <fo:layout-master-set>
  <fo:simple-page-master margin-left="2.499431cm" master-name="spm37" page-height="29.7004cm" margin-top="1.25cm" margin-bottom="0.05cm" page-width="21.0009cm" margin-right="2.499431cm">
   <fo:region-body margin-top="1.25cm" margin-bottom="0.05cm"/>
   <fo:region-after extent="2cm" overflow="visible" display-align="after" precedence="true"/>
  </fo:simple-page-master>
 </fo:layout-master-set>
 
 <fo:page-sequence master-reference="spm37" language="de" hyphenate="false">
  <fo:static-content flow-name="xsl-region-after">
   <fo:block font-size="11pt" language="de" line-height="12.65pt" font-family="Calibri" orphans="2" widows="2">That is my footer</fo:block>
  </fo:static-content>
  
  <fo:flow flow-name="xsl-region-body">
   <fo:block white-space-collapse="false" white-space-treatment="preserve" space-after="0.28cm" font-size="11pt" line-height="13.65pt" language="de" font-family="Calibri"> </fo:block>
      <fo:block space-after="0.28cm" font-size="11pt" line-height="13.65pt" language="de" font-family="Calibri" orphans="2" widows="2">Last Row</fo:block>
  </fo:flow>
 </fo:page-sequence>
</fo:root>
--
XMLmind FO Converter Support List
[email protected]
http://www.xmlmind.com/mailman/listinfo/xfc-support

Reply via email to