0
私はXSL-foを使ってmodspecsのpdf版をdocbookに生成しています。イムは、現在制御するには、このXSLTを使用して変換:XSL FO:ヘッダーとフッターのコンテンツがオーバーランしています
今...
<xsl:param name="footer.rule" select="0"/>
<xsl:param name="header.rule" select="1"/>
<xsl:param name="fop.extensions" select="0"/>
<xsl:param name="fop1.extensions" select="1"/>
<xsl:template match="node()|@*">
<xsl:copy>
<xsl:apply-templates select="node()|@*"/>
</xsl:copy>
</xsl:template>
<xsl:template name="footer.content">
<xsl:param name="pageclass" select="''"/>
<xsl:param name="sequence" select="''"/>
<xsl:param name="position" select="''"/>
<xsl:param name="gentext-key" select="''"/>
<fo:block space-before="12pt" keep-together.within-page="auto"/>
<xsl:choose>
<xsl:when test="$position = 'left'">
<fo:block>Acme Corp</fo:block>
<fo:block><fo:leader leader-pattern="space"/></fo:block>
</xsl:when>
<xsl:when test="$position = 'right'">
<fo:block>Cool Stuff</fo:block>
<fo:block>Page <fo:page-number/> of <fo:page-number-citation ref-id="last-page"/></fo:block>
</xsl:when>
</xsl:choose>
</xsl:template>
<xsl:template name="header.content">
<xsl:param name="pageclass" select="''"/>
<xsl:param name="sequence" select="''"/>
<xsl:param name="position" select="''"/>
<xsl:param name="gentext-key" select="''"/>
<xsl:choose>
<xsl:when test="$position = 'left'">
<fo:block><fo:inline font-weight="bold"><xsl:value-of select="$app_name"/> - <xsl:value-of select="d:title/text()"/></fo:inline></fo:block>
<fo:block>
<fo:retrieve-marker retrieve-class-name="section.head.marker"
retrieve-position="first-including-carryover"
retrieve-boundary="page-sequence"/>
</fo:block>
</xsl:when>
<xsl:when test="$position = 'right'">
<fo:block>Version <xsl:value-of select="$app_version"/></fo:block>
<fo:block> Build <xsl:value-of select="$build_number"/></fo:block>
</xsl:when>
</xsl:choose>
</xsl:template>
ヘッダとフッタは罰金アップ表示されますが、何らかの理由(特にmodspecの早期ページ)のために、ページの内容が重複していますヘッダーとフッターの両方。もう重複しないように修正する方法はありますか?
Ace、1)XSLT(目的のFO出力を生成する方法)、2)FO出力を生成する方法、または3)FOが期待されるPDFを生成しない理由についてですか? 1の場合は、実際のFO出力に対するFO出力を表示してください。 2(私はそれがそうだと思います)、なぜあなたのXSLTを見せているのですか?現在のFO出力(ページの内容を含む)の(代表サンプル)を表示してください。 3の場合、使用しているFOプロセッサーを明記してください。 – LarsH
@ LarsH:実際は1)実際には質問です。私はコンテンツのオーバーフローを防ぐようにXSLTを修正できることを願っています。賢明なスクリーンショット私はそれが少し冗長だと思う。現在、ヘッダーで文字化けしている前のページのコンテンツは、現在のページのコンテンツの内容がフッターで文字化けしています。理想的には、以前からの内容。ページがヘッダーの下に表示されると、現在のページのコンテンツはフッターに達すると停止します。 – Ace
これはXSLTに関するものではありません。それが価値あるものであれば、あなたはどんな言語でもFOドキュメントを構築することができますが、あなたはまだそのような**特定のXSL-FO XMLボキャブラリ問題**を持っています –