1

私の要件は、本質的に、ページ内のページを作成することです。xsl は、A4 シートのサイズの 1/3 のページを定義しますが、そのうちの 3 つまでをシートに印刷する必要があります。ページは標準のヘッダー/ボディ/フッターで、「Page X of Y」があり、もちろんシンプルです。しかし、これらの「ページ」が 4 つある場合は、最初のページに 3 ページ、2 番目のページに 1 ページの 2 ページだけを印刷する必要があります。ただし、出力 PDF が完全なシートであることをプリンターに「伝える」ため、4 ページが印刷されます。だから私がやりたいことは次のいずれかです:

  • ページを終了した後に改ページしないようにfoをコーディングします(page-break-after="avoid"ページシーケンスレベルのようなものです)OR

  • ページ シーケンス内にページ シーケンスを生成します。外側は A4 サイズとして定義され、内側はその 1/3 です。

簡単な方法で2番目を直接試しました。つまり、

<fo:page-sequence master-reference="A4">
  <fo:page-sequence master-reference="one-third_A4">
    ...  
  </fo:page-sequence>
</fo:page-sequence>

..そして、プロセッサは間違いなくそれを好きではありません。

これらのいずれかを実行できる適用可能な指示はありますか? schemacentral や w3schools.com などを調べましたが、何も見つかりませんでした。

4

1 に答える 1

0

必要なことを理解したかどうかはわかりませんが(描画が役立つでしょう)、コンテンツfo:block-containerを指定された高さの一連の要素に単純に配置することはできませんか?それらは垂直に積み重ねて出てきます。

より複雑なジオメトリが必要な場合は、XSL1.1のフローマップ機能を確認してください。で順番に接続されたページごとに3つの本文領域<fo:flow-target-list>と、fo:flowそれらにコンテンツを提供する1つの領域。

仕様によれば、fo:page-sequence別のページ内にあることは無効であり(ページ番号はどういう意味ですか?)、定義上、すべてが新しい物理ページを開始します。fo:page-sequencefo:page-sequence

fo:page-sequence-wrapperは、サブページレベルでも役立ちません。

于 2013-02-27T15:54:45.300 に答える