iTextSharp, таблицы, макет и несколько страниц - PullRequest
0 голосов
/ 14 сентября 2010

Я хочу создать счет-фактуру с помощью iTextSharp, и мне нужно напечатать строки счетов-фактур (в одной таблице) на нескольких страницах.

На первой странице счетов-фактур таблица «InvoiceRow» должна начинаться в половинеPage.

Так что, если я добавлю Таблицу через

invoiceTable.WriteSelectedRows(0, -1, 48, 570, pdfWriter.DirectContent);

к документу, результатом будет одна страница без разрывов страниц.

document.Add(invoiceTable);

выполняет торможение страницыно добавит таблицу сверху первой страницы.

Любые идеи, как начать вывод таблицы на первой странице посередине и странице> = 2 сверху?

Ответы [ 2 ]

1 голос
/ 14 октября 2010

Вы пытались использовать MultiColumnText?

Добавьте свою таблицу в объект MultiColumnText,

т.е. mct = new MultiColumnText (yPos, MultiColumnText.AUTOMATIC);mct.AddElement (TABLENAME);Document.add (mct);

Поиграйте со значением yPos, должно помочь вам переместить начало счета-фактуры на половину на первой странице, затем остальные должны перейти на следующие страницы.

0 голосов
/ 14 сентября 2010

Попробуйте положить все в один большой стол. Вроде как. (Использование HTML для ясности)

<table>
  <tr>
    <td>
      Top Content
    </td>
  </tr>
  <tr>
    <td>
      Bottom table
    </td>
  <tr>
</table>

А затем добавьте все это в ваш документ.

...