2009-05-20 18 views
6

私はgoogle-chartから1つの線グラフでPDFを生成していますが、生成された列のタイトルの品質は私たちのニーズに合っていません。FOP:fo:ブロック幅属性が無視されますか?

このタスクは[fo:table]を使用して行う必要がありますが、タイトル(幅と余白/パディング)を正しく配置することはできません。

合計で、[fo:block]を使用して幅属性と負のマージン(つまりwidth="1.5cm" margin-top="-2em")を設定してタイトルを付けるとしますが、その幅は有効になりません。

あなたはそれを行う方法を知っていますか?

ありがとうございました。

答えて

1

最後に、私は[fo:inline]が利用可能なすべてのスペースを集めようとしているので、これを行うことはできませんでした。

1つのトリックは、充填そのギャップ90%以上(左または右)マージンを置くことであるが、私は、その後何の手がかりを持たない以前[foは:インライン】テキストは、1つ、2つ、またはそれ以上でレンダリングされましたライン。

カラムのタイトルを生成するために唯一見つかったのは、各セルに[fo:table]と余白(左に&)を追加することです。

PS:私はあなたの代わりにブロックの上にそれを直接適用の幅を設定するために、テーブルを使用することができFOPについてFOP-0.95

12

"width"プロパティはfo:block(http://www.w3.org/TR/xsl11/#fo_block参照)には適用されません。幅を再定義する場合は、fo:block-container(http://www.w3.org/TR/xsl11/#fo_block-container)またはいわゆる参照領域を生成する別の要素を使用する必要があります。予想されるレイアウトが正確であることを理解するのは少し難しいです。 「start-indent」と「end-indent」プロパティを使って、fo:blockの実際の幅に間接的に影響を与えることもできます。 HTH

+0

fo:inline-container、max-width、border-before-precedence、last-line-end-indent、その他多くの組み合わせを試しましたが、私はあなたの組み合わせを試しませんでした。私は正しいと思うのであなたに+1を与える。あなたの答えに感謝します。 – ATorras

-10

を使用しています。

+2

誰もxsl:foを使いたいと思っている人はいません...残念ながら、HTMLフォームは電子メールではひどく、印刷物はあまり良くありません。 PDFでは、あなたは何を得ているのかを知っています。 – Sprague

+0

私はXSL-FOを使ってレストランをレンダリングします。 –

関連する問題