0
我用Apache POI创建了一个excel文件。 现在我需要将其转换为PDF。 我想使用iText,但我想将合并的单元格,样式等从excel文件复制到pdf。将Excel转换为PDF - 使用iText的Java
我该如何做到这一点?由于我在网络上找到的代码示例:PDF to Excel using iText and Apache POI很好,但不会复制合并的单元格样式。
任何想法?非常感谢你 !
我用Apache POI创建了一个excel文件。 现在我需要将其转换为PDF。 我想使用iText,但我想将合并的单元格,样式等从excel文件复制到pdf。将Excel转换为PDF - 使用iText的Java
我该如何做到这一点?由于我在网络上找到的代码示例:PDF to Excel using iText and Apache POI很好,但不会复制合并的单元格样式。
任何想法?非常感谢你 !
如果您打算使用iText,最好使用iText7。这是iText的最新版本,并且已经完成了大量的错误修复(特别是对于表格)。
我已经说过了,当我看这个例子时,它似乎只是遍历所有单元格并将它们添加到一个iText Table对象中。
iText7完全可以做到同样的事情。您创建一个适当数量的列的表格,然后添加单元格。
你的问题(就我而言)归结为“我如何设计iText表格单元格”。
这是一段只生成表格的示例代码。我已经指出了你可以在哪里设计表格的内容。
public static void main(String[] args) throws Exception {
File file = new File(DEST);
file.getParentFile().mkdirs();
manipulatePdf(DEST);
}
public static void manipulatePdf(String dest) throws Exception {
PdfDocument pdfDoc = new PdfDocument(new PdfWriter(dest));
Document doc = new Document(pdfDoc);
Table table = new Table(8);
for (int i = 0; i < 16; i++) {
Paragraph para = new Paragraph("hi");
// now you can use methods like:
// para.setFont()
// para.setFontColor()
// para.setFontSize()
table.addCell(para);
}
doc.add(table);
doc.close();
}
退房在http://developers.itextpdf.com/content/itext-7-examples/itext-7-tables
更多的例子要添加到里斯的答案:一个并不简单的‘复制样式’从Excel。 *你*自己设定风格,*你*决定什么和如何。您需要Apache POI才能读取Excel样式,然后自行完成工作,将其转换为相应的iText'setFont' /'setFontColor' /'setFontSize'语句。 –
@Joris以及我如何合并单元格? http://developers.itextpdf.com/examples/tables/colspan-and-rowspan - >这里的例子不好... – Ady96
你能解释为什么这个例子不好吗?另外,你是在谈论在输入中还是在输出中合并单元? –