многострочный текст 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, поэтому я не знаю, как поместить его в заданную позицию или лучше: ограничивающую рамку.

Я подозреваю, что куски или PdfTemplate или, может быть, таблица могут помочь, но я (пока) не знаю, как это собрать. ТИА в помощь.


person KarolDepka    schedule 05.11.2009    source источник


Ответы (1)


Попробуй это:

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:

  1. фраза
  2. нижний левый x угол (левый)
  3. нижний левый угол y (внизу)
  4. верхний правый угол x (справа)
  5. верхний правый угол (сверху)
  6. высота строки (интерлиньяж)
  7. выравнивание.
person Yannick Smits    schedule 30.12.2009
comment
Спасибо. На самом деле я написал мини-библиотеку для макетов, автоподгонки и таблиц, которая включает в себя то, что вы написали в своем ответе. - person KarolDepka; 09.01.2010
comment
Что означает ширина коробки, высота коробки? - person Cocoa Dev; 03.04.2013
comment
4. верхний правый угол x, 5. верхний правый угол y: openlogic.com/wazi/bid/188064/iText-Generate-PDFs-in-Java - person Tillito; 09.04.2013
comment
как сделать так, чтобы этот текст располагался поверх других элементов? Сейчас он спрятан за столом. - person TWilly; 13.12.2016