0

一部の章の最後のページとして空白ページを挿入しようとしています。たとえば、表紙の後に空白のページが必要です。私はこのようにやっています:

    <fo:page-sequence-master master-name="cover_pagemaster" force-page-count="even">
       <fo:repeatable-page-master-alternatives>
          <fo:conditional-page-master-reference master-reference="cover" page-position="any" />
           <fo:conditional-page-master-reference master-reference="empty_page" page-position="last" blank-or-not-blank="blank" />
       </fo:repeatable-page-master-alternatives>
    </fo:page-sequence-master>

1 つは表紙、もう 1 つは空白の 2 ページである必要があります。なぜそのように機能しないのですか?

助けてくれてありがとう!

編集:

        <fo:page-sequence-master master-name="cover_pagemaster" force-page-count="even">
           <fo:repeatable-page-master-alternatives>
                <fo:conditional-page-master-reference master-reference="empty_page" page-position="last" blank-or-not-blank="blank" />
                <fo:conditional-page-master-reference master-reference="cover" page-position="first" />
           </fo:repeatable-page-master-alternatives>
        </fo:page-sequence-master>

さて、私は今さまざまな組み合わせを試しましたが、それでもうまくいきません。force-page-count も機能しません (アンテナハウスの評価版を使用しています)。

2 ページのページ マスターの 2 ページ目として空白のページを生成する xsl-fo コードの実例が見つかりません。

2回目の編集:

    <fo:simple-page-master master-name="cover" page-height="29.7cm" page-width="21cm">
       <fo:region-body />
    </fo:simple-page-master>

    <fo:simple-page-master master-name="empty_page">
       <fo:region-body />
    </fo:simple-page-master>

次に、ページ シーケンスで:

 <fo:page-sequence master-reference="cover_pagemaster">
    <fo:flow flow-name="xsl-region-body">
       <fo:block-container absolute-position="absolute" top="70mm" left="30mm">
          <fo:block>
             <fo:external-graphic src="coverpage.png" content-width="140mm" content-height="90mm" />
          </fo:block>
       </fo:block-container>
       <fo:block-container text-align="right" hyphenate="true" absolute-position="absolute" font-family="Calibri" font-size="4em" top="200mm" left="42mm" margin-right="10mm">
          <fo:block>COVERPAGE</fo:block>
          <fo:block>TEST</fo:block>
          <fo:block>ABSOLUTE POSITIONING
          </fo:block>
       </fo:block-container>
    </fo:flow>
 </fo:page-sequence
4

1 に答える 1

1

repeatable-page-master-alternatives のリストは順番に処理されます。そのため、フォーマッタが章の最後のページを処理するとき、リストを調べて、最初のエントリ (page-position="any") の条件がこのページで有効であることを確認します。そのため、代替の完全なリストを確認せずに、最後のページに「表紙」が割り当てられます。
したがって、repeatable-page-master-alternatives のリストを作成して、より一般的なページ (左、右、すべて) の前に例外 (最初のページ、最後のページ) をリストする必要があります。

編集

これで正しい順序になりました。しかし、あなたは指定しましblank-or-not-blank="blank"た。これは、「ページが空白の場合 (つまり、本文が含まれていない場合) にのみ、このマスター ページを使用する」ことを意味します。
2 番目のページは現在どのように表示されていますか? どのマスターページが使用されますか?

編集 2 :
force-page-count 属性では、「even」の代わりに「end-on-even」を使用する必要があります。

于 2014-12-01T13:11:24.887 に答える