0

質問: NFop はフロートをサポートしていますか?

背景:ページ番号、企業ロゴ、データ表を含む印刷可能なレポートを生成する必要があります。このレポートは Web ベースのプロジェクト用で、当初は CSS 印刷スタイルシートを使用して純粋な HTML で作成することを考えていましたが、ページ番号と表のセルの分割が問題のようです。

このため、XSL を使用して XSL-FO を生成し、NFop を使用して PDF を生成する、PDF 生成ルートに進むことにしました。しかし、NFopは<fo:float>XSL-FOの部分をサポートしていないようです?

以下はうまくレンダリングされます:

<fo:block>
  <fo:external-graphic src="c:\Projects\NFopSpike\NFopSpike\logo.jpg" />
  <fo:block>
    Foo
  </fo:block>
  <fo:block>
    Bar
  </fo:block>
</fo:block>

以下は、グラフィックを完全にスキップします。

<fo:block>
  <fo:float float="start">
    <fo:external-graphic src="c:\Projects\NFopSpike\NFopSpike\logo.jpg" />
  </fo:float>
  <fo:block>
    Foo
  </fo:block>
  <fo:block>
    Bar
  </fo:block>
</fo:block>

私が現在使用している別の解決策は、フローティング画像が表示される場所に絶対に配置された別のブロックコンテナーを作成し、他のコンテンツが隠れないようにすることですが、単純なフロートの方が維持がはるかに簡単です。

4

1 に答える 1

3

NFOP (2008 年 3 月の最新リリース) は、Apache FOP (2010 年 7 月の最新リリース) の .NET ポートです。Apache FOP は fo:float をサポートしていません ( http://xmlgraphics.apache.org/fop/compliance.html#fo-object-floatを参照)。

したがって、あなたの質問に対する答えは次のとおりです。いいえ、fo:float は残念ながらサポートされていません。

于 2011-01-11T16:53:05.923 に答える