2016-06-01 24 views
0

freemarkerを使用してNetsuiteでpdfsをテンプレート化していて、最後のページにのみフッターを表示したい。私はいくつかの研究を行ってきましたが、解決策が見つからなかったので(環境ではlibをインクルードまたはインポートすることができないように見えます)、ifタグの総ページ数とページ数を比較するだけですてきで簡単な回避策になります。私はすでに<pagenumber/><totalpages/>タグを使用して数値を表示する方法を知っているが、私はこのようにそれらを使用することができますので、まだ値としてそれらを取得することはできません。Netsuite PDFテンプレート:属性としてページ数を取得

<#if (pagenumber == totalpages) > 
    ... footer html... 
</#if> 

方法や場所の任意のアイデアは、私からこれらの値を得ることができます?

+0

既にこれを試してくださいhttp://stackoverflow.com/questions/16670704/freemarker-pdf-header-footer-and-page-breaks、しかしそれを働かせることができませんでした。 –

答えて

1

BFOとFreemarkerの構文を混在させているため、試行しているアプローチは機能しません。 Netsuiteは、2つの異なる "エンジン"を使用してPDFテンプレートを処理します。最初のステップは、レコードフィールドをテンプレートとマージしてXMLファイルを生成するFreemarkerで、BFOによってPDFファイルに変換されます。 <totalpages/>要素はFreemarkerにとって意味がありません。後でBFOによって数字に変換されるためです。私たちは、明示的に割り当てるための施設を持っていない現時点では

BFO FAQあたりとして

残念ながら、文書の最後のページにフッターを追加する機能は、現在、BFOの制限です フッタまたはヘッダーは、 ページの数が不明な場合にドキュメントの最後のページに移動します。

0

あなたは改ページした後、それを追加することができます - と本文の最後に改ページを入れ

<pbr footer="nlfooter" footer-height="25%"></pbr> 
</body> 

問題はここにある - 1ページ出力に - あなたは2ページ最低限取得します...それは常に免責条項/フッターのページを追加します...

関連する問題