我有一个从第 1 页开始并继续的布局。现在的问题是它也计算空白页。有没有办法强制停止空白页计数。
电流输出 :
第 1 页(非空白( - 第 1 页,共 6 页
第2页(空白(
第 3 页(非空白( - 第 3 页,共 6 页
第4页(空白(
第 5 页(非空白( - 第 5 页,共 6 页
第6页(空白(
预期产出:
第 1 页(非空白( - 第 1 页,共 3 页
第2页(空白(
第 3 页(非空白( - 第 2 页,共 3 页
第4页(空白(
第 5 页(非空白( - 第 3 页,共 3 页
第6页(空白(
法典
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" xmlns:fo="http://www.w3.org/1999/XSL/Format" >
<xsl:template match="/">
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
<fo:simple-page-master margin-left="0.5in" margin-top="0.5in" margin-right="0.5in" margin-bottom="0.5in" page-height="11in" page-width="8.5in" master-name="PageFront">
<fo:region-body region-name="letterPageBody" margin-left="0pt" margin-top="3.5in" margin-right="0pt" margin-bottom="1in" />
<fo:region-before extent="4in" region-name="FirstPageHeader" precedence="true" />
<fo:region-after extent="0.8in" region-name="letterPageFooter" precedence="true" background-color="yellow" />
</fo:simple-page-master>
<fo:simple-page-master margin-left="0.5in" margin-top="0.5in" margin-right="0.5in" margin-bottom="0.5in" page-height="11in" page-width="8.5in" xmlns:fo="http://www.w3.org/1999/XSL/Format" master-name="Blank">
<fo:region-body margin-left="0pt" margin-top="3.5in" margin-right="0pt" margin-bottom="1in" region-name="letterPageBody2" />
</fo:simple-page-master>
<fo:page-sequence-master master-name="LetterPages">
<fo:repeatable-page-master-alternatives>
<fo:conditional-page-master-reference master-reference="PageFront" page-position="first" odd-or-even="odd" />
<fo:conditional-page-master-reference master-reference="Blank" odd-or-even="even" />
<fo:conditional-page-master-reference master-reference="PageFront" odd-or-even="odd" />
</fo:repeatable-page-master-alternatives>
</fo:page-sequence-master>
</fo:layout-master-set>
<fo:page-sequence force-page-count="auto" initial-page-number="auto" master-reference="LetterPages">
<fo:static-content flow-name="letterPageFooter">
<fo:block>
<xsl:apply-templates select="//region[@name='Footer']" />
</fo:block>
</fo:static-content>
<fo:static-content flow-name="FirstPageHeader">
<fo:table width="100%" table-layout="fixed">
<fo:table-body>
<fo:table-row>
<fo:table-cell>
<fo:block background-color="#67D217">
<xsl:apply-templates select="//region[@name='address']" />
</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row>
<fo:table-cell>
<fo:block text-align="center">Page <fo:page-number /> of <fo:page-number-citation ref-id="LastPage" /></fo:block>
</fo:table-cell>
</fo:table-row>
</fo:table-body>
</fo:table>
</fo:static-content>
<fo:flow flow-name="letterPageBody">
<fo:block background-color="#F1F1F1">
<xsl:apply-templates select="//region[@name='Body']" />
</fo:block>
<fo:block id="LastPage" />
</fo:flow>
</fo:page-sequence>
</fo:root>
</xsl:template>
</xsl:stylesheet>
上面的输出是(假设有两个页面要显示(
首页(非空白( 第 1 页,共 3 页
第二页(空白(
第三页(非空白( 第 3 页,共 3 页
编辑
这是使用上述xsl的文档(这是一个基于Apache-FOP编写的自定义工具(
<?xml version="1.0" encoding="utf-8"?>
<docdef version="5.1" numbering-format="1">
<scriptlinks />
<script language="JavaScript" />
<interview-data />
<template-edition channel="2" template="">
<edition-content>
<sectionmap section="Body" region="Body" />
<sectionmap section="Footer" region="Footer" />
<sectionmap section="Header" region="address" />
</edition-content>
</template-edition>
<section id="" name="Document">
<section id="" name="Body">
<frag id="" name="new text fragment" no-match="error" type="text">
<edition id="" name="new text fragment" withdrawn="False">
<edition-content>
<p xml:space="preserve">hen it is 5°F outside?</p>
<p xml:space="preserve">Wearing a cape during combat?</p>
<p xml:space="preserve">What's between the finite and the infinite?</p>
<p xml:space="preserve">What was C-3PO talking about when he said, “That’s funny, the damage doesn’t look as bad from out here.”</p>
<p xml:space="preserve">Intersperse lines from two files</p>
<p xml:space="preserve">How to find an employer who is NOT child friendly?</p>
<p xml:space="preserve">Why does Binary exist?</p>
<p xml:space="preserve">How many layers are too many layers in ArcMap?</p>
<p xml:space="preserve">Quinean Regex Tester</p>
<p xml:space="preserve">Is it safe to post one's research on web sites like Math Overflow for "peer review" before submitting to a journal?</p>
<p xml:space="preserve">Does a mourner tear one garment, or every garment he wears for a period of time?</p>
<p xml:space="preserve">Particle between city and prefecture?</p>
<p xml:space="preserve">Surrounded Countries</p>
<p xml:space="preserve">Why would security cover things like natural disasters?</p>
<p xml:space="preserve">How do exit interviews benefit the company?</p>
<p xml:space="preserve">Mystery 1970's Sci Fi Novel titled "Planet of the Gworfs" (or perhaps planet of the "Gwarfs")</p>
<p xml:space="preserve">Getting a US minor passport when you can't find one parent</p>
<p xml:space="preserve">Open source software capable of open Sketch files</p>
<p xml:space="preserve">Is it possible to spread holy water on a weapon like you do with poison?</p>
<p xml:space="preserve">more hot questions</p>
<p xml:space="preserve">question feed</p>
<p xml:space="preserve">tour help blog chat data legal privacy policy work here advertising info mobile contact us feedback</p>
<p xml:space="preserve">TECHNOLOGY LIFE / ARTS CULTURE / RECREATION SCIENCE OTHER</p>
<p xml:space="preserve">Stack Overflow</p>
<p xml:space="preserve">Server Fault</p>
<p xml:space="preserve">Super User</p>
<p xml:space="preserve">Web Applications</p>
<p xml:space="preserve">Ask Ubuntu</p>
<p xml:space="preserve">Webmasters</p>
</edition-content>
</edition>
</frag>
</section>
<section id="" name="Header">
<frag id="" name="new text fragment" no-match="error" type="text">
<edition id="" name="new text fragment" withdrawn="False">
<edition-content>
<p xml:space="preserve">Page <page-numbering value="current.page" /> of <page-numbering value="total.pages" /></p>
</edition-content>
</edition>
</frag>
</section>
<section id="" name="Footer">
<frag id="" name="new text fragment" no-match="error" type="text">
<edition id="" name="new text fragment" withdrawn="False">
<edition-content>
<p xml:space="preserve">Type your text here...</p>
</edition-content>
</edition>
</frag>
</section>
</section>
在上面
<template-edition channel="2" template="">
<edition-content>
<sectionmap section="Body" region="Body" />
<sectionmap section="Footer" region="Footer" />
<sectionmap section="Header" region="address" />
</edition-content>
例:"标头"映射到 XSL 区域"地址"(与其他区域相同(
如果您的所有页面都来自单个fo:page-sequence
,则没有直接的方法可以实现所需的输出。
在 XSL 建议中,fo:page-number
的值定义为页面的作品集编号特征,该特征根据以下规则计算:
fo:page-sequence
返回的第一页上的作品集编号特征的值被约束为等于initial-page-number
特征的值。- 后续页面上的作品集编号特征的值被限制为比前一页上的值大 1。
换句话说,您可以决定从page-sequence
派生的第一页的初始页号,但连续的页会得到连续的页码(无论它们是否显示在页面中(。
这是一般的答案;在你的特定情况下,可能有间接的方法可以得到你想要的东西:
- 可以将
- 您的内容分成不同的
page-sequence
,以便每个生成一个完整的页面和一个空白页面(设置force-page-count="even"
并在第二个page-sequence
上使用initial-page-number="2"
,依此类推...... 通过两步方法,您可以使用 FOP 的中间格式功能来
- 创建没有空白页的输出,具有所需的页码
- 在编号页之间插入空白页
(披露:我是一名FOP开发人员,尽管近年来不是很活跃(