itext многострочный текст в ограничивающем поле
Вопрос
Кто-нибудь знает, как в iText добавить многострочный текст в ограничивающую рамку (с указанными координатами).
Я пытался
cb.showTextAligned(
PdfContentByte.ALIGN_LEFT,
text,
bounds.getLeft(),
TOTAL_HEIGHT-bounds.getTop(),
0 );
Но он не поддерживает новые строки.Я тоже пытался
PdfContentByte cb = writer.getDirectContent();
cb.moveText(300,400);
document.add(new Paragraph("TEST paragraph\nNewline"));
Это поддерживает перевод строк, но не реагирует на moveText, поэтому я не знаю, как поместить его в заданную позицию или лучше:ограничивающий прямоугольник.
Я подозреваю, что chunks или PdfTemplate или, возможно, table могли бы помочь, но я (пока) не знаю, как собрать это воедино.ТИА за помощью.
Решение
Попробуй это:
ColumnText ct = new ColumnText(cb);
Phrase myText = new Phrase("TEST paragraph\nAfter Newline");
ct.setSimpleColumn(myText, 34, 750, 580, 317, 15, Element.ALIGN_LEFT);
ct.go();
параметрами SetSimpleColumn являются:
- фраза
- нижний левый угол x (слева)
- нижний левый y-образный угол (снизу)
- верхний правый x угол (справа)
- верхний правый y-образный угол (вверху)
- высота линии (ведущая)
- выравнивание.
Другие советы
ColumnText ct = new ColumnText(content);
ct.setSimpleColumn(
new Phrase("Very Long Text"),
left=20, bottom=100, right=500, top=500,
fontSize=18, Element.ALIGN_JUSTIFIED);
ct.go(); // for drawing
Не связан с StackOverflow