2011-01-07 5 views
0

質問: NFopのサポートは浮動していますか?C#(NFop)でXSL-FOで浮動小数点を使用するにはどうすればよいですか?

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

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

以下の罰金レンダリング:

<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> 

私は今のところ使っている別の解決策は、別のブロックコンテナを作成することです、つまりフローティングイメージが表示される場所に絶対的に配置され、他のコンテンツが不明瞭ではないことを保証しますが、単純なフロートは維持しやすくなります。

+0

NFopよりも優れたその他の無料PDF生成ライブラリの提案も大歓迎です。それがより良いと思う理由を教えてください。 – jamiebarrow

答えて

3

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

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

+0

非常に不幸なことに、フロートは非常に便利です! :) お疲れ様でした – jamiebarrow

関連する問題