1

如何在其下方/上方放置图像和文本?

我尝试了下面的代码,但我只能看到“测试 1”和“测试 3”

private void createTable(Paragraph paragraph, Document document){
    PdfPTable table = new PdfPTable(2);

    PdfPCell c1 = new PdfPCell(new Phrase("Question"));
    c1.setHorizontalAlignment(Element.ALIGN_CENTER);
    table.addCell(c1);

    c1 = new PdfPCell(new Phrase("Answer"));
    c1.setHorizontalAlignment(Element.ALIGN_CENTER);
    table.addCell(c1);

    table.setHeaderRows(1);

    HierarchyElement formElement;
    FormController formController = Collect.getInstance().getFormController();
    Image imageAnswer = null;

    for(int i = 0; i < mFormList.size(); i++){
        formElement = mFormList.get(i);

        table.addCell(formElement.getPrimaryText());

        String imageName = getImageNameOfSelectedAnswer(formController, formElement);
        if(imageName != null){
            imageAnswer = Image.getInstance(imageName);
            imageAnswer.scalePercent((float) 0.1);
        }

        PdfPCell cell = new PdfPCell();
        cell.addElement(new Paragraph("Test 1"));
        cell.addElement(new Chunk(imageAnswer, 0, 0, true));
        cell.addElement(new Paragraph("Test 3"));
        table.addCell(cell);
    }

    paragraph.add(table);
    document.add(paragraph);
}
4

1 回答 1

5

你应该试试这个:

PdfPTable table = new PdfPTable(2);  
PdfPCell cell = new PdfPCell();
Paragraph paragraph1 = new Paragraph();
paragraph1.add(textAnswer);
cell.addElement(paragraph1);
cell.addElement(new Paragraph("Test 1"));
cell.addElement(imageAnswer);
cell.addElement(new Paragraph("Test 3"));
table.addCell(cell);

如果这不起作用,请提供在 Java 中重现问题的 SSCCE。

于 2013-09-10T10:46:35.563 回答