Java 文档。添加(表)未完成
我已经写了一个PDF生成器程序,它可以在PDF文件中创建一个表格报告。我的代码的有效版本如下所示:Java 文档。添加(表)未完成,java,pdf,pdf-generation,itext7,Java,Pdf,Pdf Generation,Itext7,我已经写了一个PDF生成器程序,它可以在PDF文件中创建一个表格报告。我的代码的有效版本如下所示: public boolean createPdf(String filePath , List<String> header , List<List<String>> dataset
public boolean createPdf(String filePath
, List<String> header
, List<List<String>> dataset
, String title
, int totalNumOfColumn){
try
{
PdfDocument pdfDoc = new PdfDocument(new PdfWriter(filePath));
pdfDoc.getCatalog().setViewerPreferences(
new PdfViewerPreferences().setDisplayDocTitle(true));
PdfDocumentInfo info = pdfDoc.getDocumentInfo();
info.setAuthor("ABC");
info.setCreator("ABC");
info.setTitle(title);
Document document = new Document(pdfDoc, PageSize.A4.rotate());
Table table = new Table(totalNumOfColumn);
// Adding header row
for (String content : header){
table.addHeaderCell(content);
}
// Adding data
for (List<String> record : dataset) {
for (String field : record) {
table.addCell(field);
}
}
document.add(table);
document.close();
return true;
}
catch (Exception e) {
System.out.println(e);
return false;
}
}
for (String content : header) {
Cell cell = new Cell().setBold().add(content);
table.addHeaderCell(cell);
}
然后我的document.add(表)代码>永不返回
我不知道为什么。请告知。setBold()有问题。我尝试了Cell Cell=new Cell()。添加(内容);而且效果很好。但是,一旦我添加了setBold(),它就停止工作了。您能否提供一个没有任何变量的自包含示例,而这些变量是试图重现您的问题的人所不知道的?另外,您使用的是哪个版本。我还想提一下setBold()
可能不是您希望文本加粗的方式。您最好尝试使用真正的加粗字体。