我用 Apache POI 创建了一个 excel 文件。 现在我需要将其转换为 PDF。 我想使用 iText,但我想将合并的单元格、样式等从 excel 文件复制到 pdf。
我怎样才能做到这一点?因为我在网上找到的代码示例: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 查看更多示例
关于java - 将 Excel 转换为 PDF - 使用 iText 的 Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45886648/