Я новичок в библиотеке iText. Мое требование: мой сервлет создаст лист меток (PDF). Это добавит изображение на всю страницу документа и текст в определенное место на изображении документа.
Пожалуйста помоги?
Вопрос
Я новичок в библиотеке iText. Мое требование: мой сервлет создаст лист меток (PDF). Это добавит изображение на всю страницу документа и текст в определенное место на изображении документа.
Пожалуйста помоги?
Непонятно, о чем параметр text. Возможно, вы выбрали прямое содержание, которое идет под изображением, но это не главная проблема.
Вы должны были прочитать некоторую документацию, потому что вы используете beginText(), setFontAndSize(), showText() и endText(), но вы не очень хорошо читали документацию, потому что:
(1) Вы используете lineTo() без moveTo() сначала и без stroke() после. Другими словами: вы создаете странный путь, который никогда не рисуется.
(2) Вы используете showText(), но я не вижу, чтобы вы где-либо определяли координаты для текста. Что случилось с вашим методом setTextMatrix()?
(3) Вы новичок, но вместо простого кода, например:
ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT,
new Phrase("This is a test"), 100, 100, 0);
Похоже, вы хотите научиться бегать до того, как научитесь ходить.
Кроме того: вы, вероятно, используете старую версию iText, потому что вы не упоминаете, что исключение возникает, когда вы используете недопустимый оператор lineTo() внутри текстового блока. Вы не можете использовать lineTo() внутри последовательности beginText()/endText().
Пожалуйста, следуйте советам mkl и сначала прочитайте документацию.
Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.