2010-06-10 1 views
0

Я пытаюсь вставить изображение в нижний колонтитул моего документа, используя событие onCloseDocument iText. У меня есть следующий код:Вставка изображения onCloseDocument

public void onCloseDocument(PdfWriter writer, Document document) { 
     PdfContentByte pdfByte = writer.getDirectContent(); 
     try { 
      // logo is a non-null global variable 
      Image theImage = new Jpeg(logo); 
      pdfByte.addImage(theImage, 400.0f, 0.0f, 0.0f, 400.0f, 0.0f, 0.0f); 
     } catch (Exception e) { e.printStackTrace(); } 
} 

Код не содержит исключений, но также не может вставить изображение. Этот идентичный код используется в OpenDocument для вставки того же логотипа. Единственное различие между этими двумя методами - это координаты в pdfByte.addImage. Тем не менее, я пробовал несколько разных координат в onCloseDocument, и ни один из них не появился нигде в моем документе.

Есть ли способ устранения неполадок для обнаружения содержимого, отображаемого за пределами страницы в PDF-формате? Если нет, может ли кто-нибудь увидеть проблему с моим методом onCloseDocument?

Редактировать: В качестве продолжения кажется, что onDocumentClose помещает его содержимое на страницу document.length() + 1 (согласно его API). Однако я не знаю, как изменить номер страницы на document.length() и поместить мой логотип на последнюю страницу.

ответ

0

Решение, которое работало для меня (автор вопроса), меняет onCloseDocument на onParagraphEnd (так как в моем документе есть только один абзац).

Смежные вопросы