У меня есть таблица, в которой в первой строке есть только изображения, а во второй строке есть только описания изображений. Я обрабатываю это, создавая таблицу с размером (столбцами) количества изображений, а затем заполняя ячейки таблицами размером 1 (2 строки = 1-я строка, вторая строка - описание). После установки выравнивания ячеек 1-й строки в центр, вторая строка не будет применять выравнивание, а описание останется слева ... это ошибка?iText - изображение разбивает выравнивание ячейки
Integer size = filepathArray.length;
PdfPTable pdfPTable = new PdfPTable(size);
for (int i = 0; i < size; i++) {
PdfPTable inner = new PdfPTable(1);
try {
PdfPCell image = new PdfPCell();
PdfPCell description = new PdfPCell();
PdfPCell cell = new PdfPCell();
image.setImage(Image.getInstance(getImageAsByteArray(filepathArray[i])));
image.setFixedHeight(32);
image.setBorder(Rectangle.NO_BORDER);
image.setHorizontalAlignment(Element.ALIGN_CENTER);
inner.addCell(image);
description.addElement(new Chunk(filepathArray[i], FontFactory.getFont("Arial", 8)));
description.setBorder(Rectangle.NO_BORDER);
description.setHorizontalAlignment(Element.ALIGN_CENTER);
inner.addCell(description);
cell = new PdfPCell();
cell.addElement(inner); // needed to actually remove the border from the cell which contains the inner table because tables have no setter for the border
cell.setBorder(Rectangle.NO_BORDER);
pdfPTable.addCell(cell);
} catch (Exception e) {
}
}
pdfPTable.setHorizontalAlignment(Element.ALIGN_LEFT);
Результат: изображение сосредоточено, текст не является, никоим образом, я пробовал все! Кроме того, addElement() удаляет все ранее установленные выравнивания (элементы таблицы и ячейки, это ошибка?), Поэтому мне нужно установить выравнивание ПОСЛЕ того, как я добавил контент в ячейку или таблицу.
что я должен сказать ... Я ленив при чтении (особенно в документах);) стыдно за меня! Но большое вам спасибо, он работает сейчас! ДА! – Pali