У меня есть требование конвертировать PDF из HTML с помощью itext lib в java. Моя входная HTML-страница имеет табличную структуру и имеет отдельные верхний и нижний колонтитулы. Я преобразовал эту страницу в PDF, однако, поскольку моя HTML-страница имеет связанный с ней нижний колонтитул, я пытаюсь переместить нижний колонтитул моего сгенерированного PDF-файла в место, где заканчиваются фактические данные конкретной страницы (т.е. если страница содержит только 10 строки данных из заголовка, затем я пытаюсь добавить нижний колонтитул после 10-й строки). Класс PDFEventHelper помог мне добавить верхний и нижний колонтитулы, но я столкнулся с этим требованием перемещения. Может ли кто-нибудь сказать мне, как бороться с такими сценариями?? кто-нибудь знает, как читать пустые (незаписанные) сектора на странице PDF ?? Заранее спасибо.
Работа с Itext PDF в Java
Ответы (1)
Document
, переданное в ваше переопределение onEndPage
, на самом деле является PdfDocument
.
После того, как вы привели параметр к PdfDocument
, вы можете вызвать PdfDocument.getVerticalPosition(true)
, чтобы определить, где был расположен последний элемент, и соответствующим образом нарисовать нижний колонтитул. Обратите внимание, что это дает только позицию Y, но это все, что вам действительно нужно для нижнего колонтитула.
Параметр, передаваемый в getVerticalPosition, называется «ensureNewLine». Я сильно подозреваю, что то, что вы передадите, не будет иметь значения, потому что это событие конечной страницы, и любые конечные строки уже будут написаны/завершены/закрыты/как бы там ни называлось.
person
Mark Storer
schedule
11.07.2011