- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我有一个从第 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 页
edit
这是使用上述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>
例子:'Header' 映射到 XSL 区域 'address'(其他相同)
最佳答案
如果您的所有页面都来自一个fo:page-sequence
,则没有直接方法可以实现您想要的输出。
在XSL recommendation fo:page-number
的值被定义为页面的 folio-number 特征,它是根据以下规则计算的:
- The value of the folio-number trait on the first page returned by the
fo:page-sequence
is constrained to equal the value of theinitial-page-number
trait.- The value of the folio-number trait on subsequent pages is constrained to be one greater than the value on the immediately preceding page.
换句话说,您可以决定从 page-sequence
派生的第一页的初始编号,但是连续的页面获得连续的页码(无论它们是是否显示在页面中)。
这是一般的答案;在您的特定情况下,可能有间接方法来获得您想要的:
page-sequence
,这样每个页面都会生成一个完整页面和一个空白页面(设置 force-page-count="even"
并在第二个 page-sequence
上使用 initial-page-number="2"
,依此类推 ...)通过两步方法,您可以使用 FOP 的 intermediate format feature到
(披露:我是一名 FOP 开发者,虽然这几年不是很活跃)
关于xml - 如何停止计算空白页 XSLT/XSLFO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34737006/
我有三个页面序列来处理三种不同类型的页面:封面、目录之前的一系列页面和目录之后的一系列页面。每个页面序列都有一些独特的属性。例如,封面没有页眉和页脚,TOC 之前的页面是小写罗马数字编号,TOC 之后
我是 XSLFO 的新手。我需要根据某些条件为文本条目着色。我用代码片段做的 通过上面的代码片段,我可以将文本的前景色设置为红色。我的问题是如何设置相同的背景颜色。 我可以使用添加背景颜
我有一个从第 1 页开始并继续的布局。现在的问题是它也计算空白页。有没有办法强制停止空白页计数。 当前输出: 第 1 页(非空白)- 第 1 页,共 6 页 第2页(空白) 第 3 页(非空白)- 第
我对 XSL 命名空间有以下问题。我使用带有一个 XSL 文件和一个 XML 文件的 FOP 生成 PDF。 这是我的 XML 文件: BLABLA 这是我的 XSL 文件: [...]
我的第一个问题;我目前正在修复一个图形服务,该服务使用 XSLFO 将我们的语法转换为 FO,并最终将其转换为 PDF。 以前我们一直在 PDF 导出中使用来自网络的 PNG 图形,但这会产生非常难看
是否可以使用 XSLT 和 Java 创建 PDF 文档而不使用 XSLFO? 我问的原因是我可能有一个xml文档,需要使用XSL来创建PDF。我可能没有 XSLFO 文档。 如果没有,如何使用Jav
我是一名优秀的程序员,十分优秀!