1

XSLFOに質問があります。ジェネレーターはFOPです。やりたいこと:PDFでアイテムリストを生成したいのですが、各アイテムは特定の幅と高さのボックスに入っています。コンテンツがこのボックスに収まらない場合は、コンテンツをより大きなボックスに表示する必要があります(特定のサイズも表示されます)。

特にFOPでは、XSLFOでそれに到達する方法がわかりません。

誰かがそれを解決するアイデアを持っていますか?

すべてのアイデアをありがとう!

4

1 に答える 1

1

ここには、2つの別個の独立した処理ステップが含まれます。

  1. XSL-FOマークアップの生成(スタイルシートとXSLTプロセッサーを使用)。
  2. XSL-FOマークアップをPDFとしてレンダリングする(FOPなどのFOプロセッサーを使用)。

2番目のステップは最初のステップに影響を与えることはできません。レンダリング中にオーバーフロー条件をテストして、呼び出すテンプレートを何らかの方法で決定することはできません。フィードバックループはありません。あなたが求めていることは不可能です。


XSLTでテキスト文字列の長さを推定することにより、大まかなテキストフィッティングを行うことができます。それが「構成されたテキスト文字列の長さを推測するためのSaxon拡張機能」の背後にある考え方です。

私はこの拡張機能を使用していません、そしてそれはもう利用できないかもしれません(それについての発表は2004年からです)。いずれにせよ、これは実際のレイアウトフィードバックメカニズムとはかけ離れています。

于 2012-07-30T10:59:43.253 に答える