1

pdftable の前に columntext があります。2 つの要素が重ならないようにするにはどうすればよいですか?

ColumnText addressHeader = new ColumnText(cb);
Phrase addressText = new Phrase("Lorem ipsum");
addressHeader.SetSimpleColumn(addressText, 34, 750, 580, 317, 15, Element.ALIGN_LEFT);
addressHeader.FollowingIndent = 10f;
addressHeader.Go();
PdfPTable contactTable = new PdfPTable(2);
float[] contactWidths = new float[] { 1f, 1f };
contactTable.TotalWidth = 400f;
contactTable.LockedWidth = true;
contactTable.SpacingBefore = 10f;
contactTable.SetWidths(contactWidths);
PdfPCell contactInfoCell = new PdfPCell();
contactInfoCell.AddElement(new Chunk("Date Requested));
doc.Add(contactTable);
4

1 に答える 1

3

ColumnText.SetSimpleColumn()Document.Add()メソッドは物事を相対的に配置するために使用されますが、物事を絶対的に配置するために使用されます。絶対オブジェクトと相対オブジェクトはお互いを認識していません。それが彼らの性質です。

したがって、相対位置を使用できる場合は、を削除して、通常どおりドキュメントにColumnText追加します。Phrase

絶対配置が必要な場合は、テーブルも絶対配置する必要があります。WriteSelectedRows()これは、書き込む行数と描画を開始する左上隅を指定するテーブルのメソッドを使用して実行できます。

3 番目に考えられるオプションは、 を使用しColumnText.SetSimpleColumn()てページ ヘッダーを描画している場合は、ドキュメントの余白を変更するだけです。マージンの外側に物を絶対に配置することはできますが、使用Document.Add()するとそれらのマージンが尊重されます。

于 2013-09-27T17:52:46.437 に答える