如何以类似矩阵的结构显示条形码?

时间:2014-02-24 07:37:03

标签: java itext barcode

如何使用库在PDF页面的多列中显示不同的以在中生成pdf?我必须在同一个PDF页面中以三列显示12个条形码,每个条形码包含4个条形码(换句话说,它是一个4乘3的矩阵)。

1 个答案:

答案 0 :(得分:4)

我做了一个Barcodes示例,完全符合您的需要。请参阅生成的pdf:barcodes_table.pdf

没什么难的。您只需创建一个包含4列的表,然后添加12个单元格:

PdfPTable table = new PdfPTable(4);
table.setWidthPercentage(100);
for (int i = 0; i < 12; i++) {
    table.addCell(createBarcode(writer, String.format("%08d", i)));
}

createBarcode()方法创建一个带条形码的单元格:

public static PdfPCell createBarcode(PdfWriter writer, String code) throws DocumentException, IOException {
    BarcodeEAN barcode = new BarcodeEAN();
    barcode.setCodeType(Barcode.EAN8);
    barcode.setCode(code);
    PdfPCell cell = new PdfPCell(barcode.createImageWithBarcode(writer.getDirectContent(), BaseColor.BLACK, BaseColor.GRAY), true);
    cell.setPadding(10);
    return cell;
}