2

私は現在 Itextsharp を使用していますが、PDfPtables に問題があります。ページには大きすぎて、ドキュメントに追加すると、複数のページに分割されることがあります。悲しいことに、この合理的な振る舞いは私の上司の何人かには受け入れられません。これを達成する方法はありますか?私ができるかもしれないいくつかの興味をそそるヒントがあります - しかし、ヒントは私が持っているすべてです.

代替手段は何ですか?おそらく、ドキュメントから太いテーブルを削除し、より小さなフォントとセルでテーブルを再度作成することもできますが、それは非常に面倒です。より適切な言葉がないため、「ズームアウト」することをお勧めします。

私の現在のコード:

Dim test As PdfContentByte = mywriter.DirectContent
Dim templ = test.CreateTemplate(mywriter.PageSize.Width, mywriter.PageSize.Height)
Table.WriteSelectedRows(0, Table.Rows.Count - 1, 0.0F, mywriter.PageSize.Height, templ)
Dim myimage = Image.GetInstance(templ)
'   myimage.ScaleAbsolute(mywriter.PageSize.Width, mywriter.PageSize.Height)

スケールアブソリュートは必要ですか?myimage.SetAbsolutePosition(0, 0) test.AddImage(myimage)

このコードはページに何かを配置しますが、ページの高さと幅はページの約 4 分の 1 です - wi はバグを見つけようとします...

4

1 に答える 1

3

テーブルを作成し、「合計幅」を定義します。iText がテーブルの幅を認識するとすぐに、すべての行の高さを計算できます。高さが分かれば、次のことを確認できます。

  1. 表はページに合っていますか?そのまま追加するだけです。WriteSelectedRowsページの余白を考慮したくない場合に使用します。
  2. ページに十分なスペースがありませんか? テーブルを に追加しPdfTemplate(これを行う方法は複数あります)、 を で囲みPdfTemplateますImage。画像を拡大縮小してドキュメントに追加します。
于 2012-10-19T12:35:51.357 に答える