Выровняйте ногу по низу при создании PDF-файла (летающая тарелка/itext)

Я использую летающую тарелку/itext для создания файлов PDF на основе HTML и столкнулся с проблемой добавления заголовка и нижнего колонтитула в файлы PDF. В итоге я сделал HTML-таблицу с theader и tfooter, что-то вроде этого:

<table>
<thead>
    <tr>
        <th>
            Header stuff
        </th>
    </tr>
</thead>
<tfoot>
    <tr>
        <th>
            Footer stuff
        </th>
    </tr>
</tfoot>
<tbody>
    <tr>
        <td>
            Content
        </td>
    </tr>
</tbody>
</table>

Наряду с правилом css «table { -fs-table-paginate: paginate; }» верхний и нижний колонтитулы правильно разбиваются на страницы. Однако я не могу заставить нижний колонтитул прилипать к нижней части страницы:

введите здесь описание изображения

Если содержимое таблицы заполняет всю страницу, нижний колонтитул сдвигается вниз:

введите здесь описание изображения

Есть ли способ опустить нижний колонтитул вниз, даже если тело не заполнено?

Спасибо, Хулиан.


person shulito    schedule 14.03.2017    source источник


Ответы (1)


Вы должны использовать CSS 3 Paged, чтобы добавить верхний и нижний колонтитулы в PDF. Это решит вашу проблему (отображение нижнего колонтитула внизу страницы), но также даст вам много приятных опций (номера страниц, конкретный заголовок для первой страницы...)

Вот основной шаблон:

<html>
<head>
    <style>
     #header { position: running(header); }
     #footer { position: running(footer); }

     @page {
       @top-center    { content: element(header); }
       @bottom-center { content: element(footer); }
     }
    </style>
</head>
<body>
    <div id='header'>Header stuff</div>
    <div id='footer'>Footer stuff</div>

    <table>
      <tbody>
          <tr>
              <td>
                  Content
              </td>
          </tr>
      </tbody>
    </table>
</body>
</html>
person obourgain    schedule 14.03.2017