将导入的PDF添加到iTextSharp中的表格单元格

时间:2015-06-12 18:49:19

标签: pdf itextsharp

我正在创建一个包含其他文档汇编的新PDF。

这些其他文件可以是word / excel / images / PDF&#39。

我希望将所有这些内容添加到表格中的单元格中,这些内容会添加到文档中 - 这使我能够自动添加页面,将元素定位在单元格而不是页面中,让我的生活更轻松保持内容与我提供的顺序相同(例如img,doc,pdf,img,pdf等)

将图像添加到表格中非常简单。

我正在将单词/ excel文档转换为PDF图像流。我也将现有的PDF作为一个流阅读。

将这些添加到新PDF非常简单 - 通过向PdfContent字节添加模板。

我尝试做的是将这些PDF添加到表格中的单元格,然后将其添加到文档中。

这可能吗?

1 个答案:

答案 0 :(得分:1)

请下载chapter 6 of my book。它包含了您尝试执行的操作的两个变体:

这是一段代码:

// step 1
Document document = new Document();
// step 2
PdfWriter writer
    = PdfWriter.getInstance(document, new FileOutputStream(RESULT));
// step 3
document.open();
// step 4
PdfReader reader = new PdfReader(MovieTemplates.RESULT);
int n = reader.getNumberOfPages();
PdfImportedPage page;
PdfPTable table = new PdfPTable(2);
for (int i = 1; i <= n; i++) {
    page = writer.getImportedPage(reader, i);
    table.getDefaultCell().setRotation(-page.getRotation());
    table.addCell(Image.getInstance(page));
}
document.add(table);
// step 5
document.close();
reader.close();

页面作为PdfImportedPage个对象导入,然后包含在Image内,以便我们可以将它们添加到PdfPTable