使用带有pdfbox的boxable更改表头颜色

时间:2017-04-12 12:31:57

标签: java pdf datatable pdfbox boxable

我正在使用pdfbox的boxable来制作pdf格式的表格。它工作正常。唯一的,我需要改变标题颜色和单元格样式。

我正在使用下面的代码。请建议

List<List> data = new ArrayList();
data.add(new ArrayList<>(Arrays.asList("Column One", "Column Two", "Column Three", "Column Four", "Column Five")));
for (int i = 1; i <= 100; i++) 
{
    data.add(new ArrayList<>(Arrays.asList("Row " + i + " Col One", "Row " + i + " Col Two", "Row " + i + " Col Three", "Row " + i + " Col Four", "Row " + i + " Col Five")));
    BaseTable dataTable = new BaseTable(yStart, yStartNewPage, bottomMargin, tableWidth, margin, doc, page, true, true);
    DataTable t = new DataTable(dataTable, page);
    t.addListToTable(data, DataTable.HASHEADER);
    dataTable.draw();
}

2 个答案:

答案 0 :(得分:1)

t.getDataCellTemplateEven().setFillColor(Color.WHITE);
t.getDataCellTemplateOdd().setFillColor(Color.WHITE);
t.getHeaderCellTemplate().setFillColor(Color.WHITE);

其中 t 是 DataTable 类的对象。 Color 类属于 AWT,您可以随意更改它。因此无需编辑库。

答案 1 :(得分:0)

我用tableable代码更改了table.java中的代码。

排在下面

PDStreamUtils.rect(tableContentStream,margin,yStart,width,headerBottomMargin,Color.GRAY);