fo:external- 跨越整个页面的图形

fo:external-graphic That Spans Across Entire Page

我正在尝试模仿整体页边距为 0.375 英寸的设计,但页脚的图形忽略了这些限制并横跨整个页面(从左到右)。

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

我是否应该将页面的左右页边距清零并简单地定义正文区域的页边距?

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

否则,您可以在 fo:static-content 中的 fo:block 上为页脚设置负边距。您可能还需要调整 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>

('a' 和 'b' 只是为了表明该块不会超出页面的两侧。)

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