fo:跨越整页的外部图形

时间:2016-04-09 17:16:51

标签: xsl-fo apache-fop

我正在尝试模仿一个总体上有0.375英寸页边距的设计,但页脚有一个图形忽略了这些约束并延伸到整个页面(从左到右)。

我的第一次尝试是设置left属性-0.375in,但它仍然从页面定义的左边距开始。

我应该只将页面的左右边距清零并简单地定义主体区域的边距吗?

1 个答案:

答案 0 :(得分:1)

不指定fo:simple-page-master的任何边距是最简单的。

否则,您可以为页脚fo:block中的fo:static-content设置负边距。您可能还需要调整fo:region-after/@extent以补偿底部边距。例如,1英寸高的图形:

<fo:layout-master-set>
    <fo:simple-page-master master-name="spm" margin="0.375in">
        <fo:region-body/>
        <fo:region-after extent=".625in"/>
    </fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="spm">
    <fo:static-content flow-name="xsl-region-after">
        <fo:block background-color="red"
        margin="-0.375in" margin-top="0in">a<fo:leader leader-length.optimum="100%"/>b</fo:block></fo:static-content>

(&#39; a&#39;&#39;&#39;只是为了表明该块不会从页面的两侧延伸出来。)

您可以使用extent上的display-align="after"将图形的底部放在较高区域的底部,而不是让fo:region-after完全正确。